Skip to main content

Full text of "dec :: pdp11 :: xxdp :: fiche 200dpi :: 0151 CVMSBB0 QuickVer"

See other formats


CVMSBRO OH QUICK Vt-RIFI 



\] 



MACRO Mli>00 lO-APR-84 07-55 PAGF I 



*jEQ 0001 



10 

II 

u? 
I? 

14 

lo 
1 ' 

18 
1^ 
^0 

^1 

■> "1 
»_ I . 

^? 

^4 

26 
■::i • 

^8 
^9 
?0 
31 
S? 
?3 
54 
?^ 
?t. 
5 ' 
?« 
59 
40 
41 
4? 
4? 
44 
45 
46 
4/ 
48 
4^» 



.RtM 



PRODUCT CODE 
PRODUCT NAME 
PRODUCT DATE 
MAINTAINER: 



IDENTIFICATION 

AC T587B-MC 

CVMSBBO 0-PM QUICK VERIFY 

APRIL 1984 

SMALL SYSTEMS DIAGNOSTIC ENGINEERING 



THE INFORMATION IN THIS D0CUME;NT IS SUBJECT TO CHANGE WITHOUT NOTICE 
AND SHOltLO NOT BE CONSTRUED AS A COMMITMENT B> DIGITAL EQUIPMENT 
CORPORATION. DIGITPL EQUIPMENT CORPORATION ASSUMES NO RESPONSIBILITY 
FOR ANY ERRORS THAT MAY APPEAR IN THIS DOCL'MENT. 

NO RESPONSIBLITy IS ASSUMED FOR THE U::.t OR RELIABILITY QF SOFTwARF ON 
EQUIPMENT THAT IS NOT SL>PPLIED BV DIGITAL OR PS AFf Ii lATED COMPANIES. 

COPYRiGHT (C): 1984 BY DIGITAL EQUIPMENT CORPORATION 

THE FOLLOWING AK: iwAurMARKS OF DIGIT^U EQUIPMENT CORPORATION: 



DIGITAL 

oec 



POP 
UtCUS 



L>NIBUS 
OtCTAPt 



MAS'iUU'.. 
OECX/ll 



CVNSt^lUi v'M QVICK W\rMiy> 



CI 

MACRO Ml.^00 10 APR 84 07 jS^ P/Uit ,^ 



SEQ 000^ 



^5 

^? 

'* 1 

I i- 

75 



l.O 
J.O 

5.0 
4»0 



TABLE OF CONTF.NTf, 



AB^iVRACT 
RtQUIREMtNTS 

MARDWARr 
SOFTWARF. 

PROGRAM OFf^CRIPTlON 

ERROR REPORHKG 



CVNSBBO .'M UUICK VbRU > 



)1 



MACRO MU'OO lO-APR-M n/tS^ PAGb. 5 



SEQ 0003 



78 

;^ 

80 
81 
8.' 
85 
84 
8b 
8^ 
8' 
88 
8^ 
^0 
^* 
'■»." 
^? 
•^4 
95 
96 

9: 

^8 
99 

100 
101 
10." 
103 
104 

lor- 

106 
10^ 

108 
109 

110 
111 
11,'^ 
11^ 
114 
115 
lib 
U-' 
118 
119 
120 

K-n 

\^^ 
i?A 

i:" 

: 'ij 

131 



1.0 ABSTRACT 

THIS PROGRAM WAS CREATED TO DO A QUICK VERIFY TEST OF Q BU'i 
MFMORY. THIS WAS NEEDED ESPECIALLY FOR THE APPLICATION OF 
TESTING '.HE MEMORY OF A MICRO PDP-11 UNDER UFD MODE. WHEN 
RUN UNDER REGULAR XXDP» THE PROGRAM IS DESIGNED TO GIVE THt 
USER OF THIS PROGRAM FRIEND'. Y MESSAGES. THIS PROGRAM CAN Bfr 
RUN IN XXDP» STANDALONE MODE, USER FRIENDLY DIAGNOSTIC MODt 
BUT NOT UNDER THE DIAGNOSTIC SUPERVISOR. 

?.0 REQUIREMENTS 

2. 1 HARDWARE 

THIS PROGRAM ASSUMES THAT THE FOLLOWING ARE IN PROPcR WORK- 
ING CONDITIONS. 

I. Q-BUS CPU 

e, XXOP» LOAD MEDIA 

THERE MUST BE MORE THAN t>4K OF MEMORY FOR THIS DIAGNOSTIC 
TO TEST OUT THE MEMORY. 

.?,^ SOFTWARE 

AFTER LOADING, THE PROGRAM MUST BE STARTED AT LOCATION c?00 



5.0 PROGRAM DESCRIPTION 

THIS PROGRAM IS A QUICK VERIM TEST ON *^M OF Q BUS MEMORi 
n USES THE MOVIN(. INVERSIONS AIGORITHM ON 12 BITS OF A r: ^^ 
ORt WORD. IT ALSO TESTS OUT THE PARITY ERROR DETECT LOGIC Of" 
THF MEMORY. AU MEfSAGes ARE INTfcNDtO TO BE US(-R FRIENDLY . 

WHEN THE PROGRAM IS PUN THF » 01 LOWING IS TYPED OUT. 

MFMORi; XXXXK BiTFS. TI-ST TIME Yt MINUTKS ^/ SECONDS 

WHERE: 

XXXX - I*. fHf AMOUNT OF MEMORY IN K 

»» I') THf TIME TO TEST TO THt MINUTt 

// IS THl- TIMfc TO TEST TO THF SECOND 

^ UR { xAMPLt : 

M(-MOHt: ,^S*.K BiTr.. nsT TIMt 5 M!Nl'TI ^ ,", StCUNUV^ 

t*!.^l' flilt ', WU L. Bt Tl ^sVr[) 

II WILL lAKb I MiNLlLU mU .^u hLCUNUu lU itSI, 



CVMStHlO vi .■'M UUICK Vb«U i 



I- 1 

MACRO M1»*00 10 APR 84 O/jSS PAlil- 5 1 



iEQ 0004 



15.^ 

1^5 
154 
l^S 
15o 

:.^^ 

140 
141 
14^^ 
14? 
144 
14S 
14o 
14 ' 
140 

150 000000 
151 



4.0 tRROR Rt.PURTINU 

AIL bRROR RFPORTING IS DESIGNtD TO Bh t-ASU.Y Rt- AD AND 
UNDfcRSTOOD. 

WHtN AN ERROR OCCURS A "CONTROL :- " CAN Bt INPUT TO Rt 
CltVt tXPANDtD ERROR INFORMATION. 



.TITLfc CVMSBBO .^M QUICK VtRIF Y 
^SBTTL HtADFR 



.FNABl l_C 
.tiNABL ABS 



tFNABl.e I OWtR CASE. 

J And absolute Xocatlonu. 



CVMSBBO vi .m QUICK VKRU'i 
EQUATE" s 



MACRO Mlf-'OO 10 -APR r^ 0/:5b PACit 4 



SEQ 0005 



lb5 




1^4 




l^S 




15t. 




1^7 




1S3 




159 




160 




161 




16^ 




1^? 




\r,A 


1 ^'b:? 


16^ 


17^51b 


lt>b 




16.' 




168 




Ib-^ 




1 '0 




171 




l.\? 


17^300 


1-'? 


1 7230? 


174 


172304 


175 


1 7230b 


176 


172510 


17 7 


17231.^ 


178 


172514 


179 


172316 


IdO 




181 




18.^ 




18? 




184 




l8^ 




' ih 


172340 


18 ' 


1 72542 


188 


172544 


18^ 


1 72346 


140 


1 72350 


191 


1725S2 


l'^/ 


172554 


193 


172556 



.SBTTl. EQUATES 



. t *********** A* 4* *********♦* + * + + + ♦♦♦♦* + ♦ + ♦♦♦ + ♦ ♦♦♦♦♦♦***^*^**4,**44»»4*4m4i4(**^4^i 

; Memory Management Equates 
I 



(Status Reg'ster addressc; 



t 



MHUSRO* 17 75 72 
MMUSRS- 1/2516 



jKernal Mode PDR addresses 



KPDRO- 


172300 


KPDRl" 


172502 


KPDR2- 


172304 


KPDR5' 


172306 


KPDR4 • 


172310 


KPDR5- 


^72512 


KP0R6' 


172514 


KPDR7- 


172316 



Kernal Mode PAR addresses 



KPARO- 


172340 


KPARl- 


1 72542 


KPAR2' 


172544 


KPAR5- 


l.'2 54<t, 


KPAR4- 


172 550 


KPAR5' 


172552 


KPAR6" 


17255^ 


KPAR7" 


172356 



CVMStUH^ 


2>\ QUICK Vt,R 


EQUATfS 




l^S 




V=»6 




19' 




198 




r^9 




: 00 


004400 


.?0] 


.' M0^ 


.\\: 


7 740^ 


JO? 


07 7400 


c^OA 




.^OS 


000000 


.\-t? 


OOOJOO 


L.'0 .' 


000400 


chs 


OOObOC 


JO*^ 


001000 


.no 


OOl^OO 


.ni 


001400 


.r.ic' 


1 7 7600 


.n? 




?14 


000001 


.ns 


OOOOPO 


.nb 




Ji: 




ria 




J19 




^^o 




■^2i 


1 ;7 ' V. 


t- 1- 1- 


06^^400 


^'^5 


000004 


p-^A 




.r:6 




^?7 




^?.^ 




22^ 


000015 


2r>i 


0000 Ir. 


c^n 


0000^1 


2 ''2 


000025 


c'55 


000055 


J 54 


00000/ 


23S 


177560 


.:!56 




.^3/ 




.^38 




^59 




.'40 




?41 


OO0C14 


2A^ 


00001? 


2AI 


uoooio 


2AA 


00000^-) 


2A'> 


000004 


d^t 


oouooi 



MACRO Ml<*00 10 APR tt4 07:55 



(Vi 

PAGt 5 



SEQ 0006 



; Memory Monao«'^«'*tt '"^giut"*'* settings 



RW*^56- 


4406 


RW4096" 


7 7406 


R04096- 


7 7402 


NR4096- 


77400 


PAROK - 





PAR4K- 


200 


PAR8K- 


400 


PARl.^K- 


600 


PAR16K- 


1000 


PAR20K- 


i;'00 


PAR^4K- 


1400 


PARIO- 


17 7600 


MMUENA- 


I 


MMuaaA- 


20 



jPDR 
jPDR 
iPDR 
jPDR 

I PAR 
J PAR 
tPAR 
(PAR 
J PAR 
(PAR 
tPAR 
tPAR 



sett ing 
sett ing 
sett ing 
sett ing 



sett 
sett 
sett 
sett 
sett 
sett 
sett 
sett 



ng 

ng 
ng 
ng 
ng 
ng 

^Q 
ng 



for 
for 
for 
For 

for 

for 
for 
for 
for 
for 
for 
for 



Read/Write, 520 words. 
Read/Write, 4096 wordy. 
Read/Only, 4096 words, 
non -res I dent . 



a base 
a base 
a base 
a base 
a base 
a base 
a base 
the I/O 



address of 0. 
address of 4K . 
address of 8K . 
addres<( of 12l< 
address of 16K 
address of 20K 
address of 24K 
page. 



iSRO setting to 
jSR3 setting to 



enable memory manugement 
enable 22 bit mopping. 



Processor Status Word and Memory time out vector 

PSW- W/776 
TIMSCrt- 62400 
TIMQUT- 4 

;4444444*4*44*444*44444*4»44**444**4444»44444 4444 4*44»**44*44»444*4*444*4****44* 

;WrIte Package tquates 



jAbCII Return. 

; ASCII L. ine Feed. 

jASCII XON. 

jASC ^ XOFf . 

;ASCII Escape character. 

(ASCII Bell character. 

iOefault console CSR address 



((duQtes that allow access to the stacl* frame. These are the o'^'^sets into 
ithe StacU for registet^U saved during the "Preserve Registers'* routine. 



CR- 


lb 


IF . 


12 


XON- 


21 


xQKr- 


2^ 


ESC- 


3^ 


BtLl • 


r 


OFFCON' 


17 



R^Sl OT 


14 


lOf fset 


for RS. 


R4SI OT • " 


12 


lOf fset 


for R4. 


R5'.l r.T-« 


10 


jOf fset 


for R5. 


R2'>1 0! 


f. 


jOff'jet 


for R2. 


RIji 'J' ^ • 


4 


{Of tsct 


tor Rl. 


RO^jLQN* 


4. 


lOtfa-et 


for RO. 



HI 



CVMSb^tiO O .^H QUICK vt'-Rir-j 
PROGRAM MACRO^i 

^bo 
csi 

^6: 

.'^68 

^:o 

271 

2 75 
274 
.- "S 

.. 7o 
27 7 
2 78 
27^ 

281 
28c* 



MACRO M1200 10 APR 84 07:*S5 PAtJt 6 



,SBTTL PROGRAM MACROS 



SEQ 0007 



I The "PRtSERVE" macro facilitates calling the standard 
[register preservation routine (PREG05). 

[macro PRESERVE 
s)SR Rb.PREGOS 
.endm PRESERVE. 



{The "PiJ'jH" macro facilitates pushing informatict on the stack. Up to 
:sl>. items may be placed on the stacl*^ with one macro. 

[macro PUSH A.B.C.D.b.r 
.If nb A 
MOV A,-CSP^ 
.endc 
. I f nb B 
MOV B. -CSP) 
.endc 
. : f nb c 
MOV C, -(SP) 
.endc 
. i f nb D 
MOV D»-(SP) 
.ertdc 
. i V nb E 
MOV E.-CSP) 
,cndC 
. I f nb K 

MOV f . f ^P) 
.endc 
,cndm PU^M 



I J 



CVMSRRO c'M L3U1CK VbRU 1 
PROGR'^H MACROS 

500 

301 

:<o.' 

?0? 
504 
50^ 
306 
507 
50tt 
509 
510 
511 
51^ 
51.^ 
514 
5 IS 

51 • 
518 
519 
5?0 
5.^1 

5.? 5 
524 
5.^b 
52*j 
5.V 
5.^8 
5<^9 
5 50 
511 
5'u' 

554 



MACRO M1*?00 lO-APR «4 07;P.b PAtit / 



SEQ 0008 



The "POP" moco facilitates retrieving Items from the stack. Up to 
sl^ items may be retrieved with one macro. 



r.t.O.C.B.A 



macro POP 

If nb K 
MOV CSP)*.K 

endc 

If nb E 
MOV CSP).,F. 

endc 

I f rtb D 
HOV CSP*)*,D 

endc 

if nb C 
MOV (SP)*,C 

endc 

If nb B 
MOV (SP)*.B 

endc 

I f nb A 
MOV (SP)*,A 

endc 

endm POP 



The '"CAlL" macro facilitates calling a subroutine rtith or without 
pass Inp parameters. If parameters are passed Into the subrout ine« 
the fl jt Is passed in RS, the second In R4 , etc. 



macro CALL 

; f nb A 
MOV A,RS 

endc 

; f nb B 
MOV H . P4 

endc 

if nb C 
MOV C,R5 

endc 

If nb D 
MOV O.R.' 

endc 

i f nb I 
MOV L.Rl 

endc 

if nl» f 
MOV ^ .RO 

er.dc 

'M PC/. 

endm CAl I 



S.A.B.C.D.t.F 



CVMSH^O .»M QUICK VKRIFI 
PROGRAM MACROS 

??^ 

?40 

?41. 

345 

344 
54 ^ 
346 
34.* 
iAS 
349 
^bO 
3M 
3 *=..■* 
3S3 
3r.4 
3'»'^ 
3S6 
3'i.' 
358 
3b9 
360 
361 
36.^ 
363 
3t>4 



MACRO M1^00 lO-rtPR-84 07 ibb 



PACit 8 



SEG 0009 



[The "RETURN" macro facilitates returnlno from a subroutine, 
J If parameters .ire passed back, tho "PRHSb-Rvr" macro f^UL.")' be 
;used at the start of the subroutine to let up the •jtr.c!< frame 
;Up to s I >. parameters may be passed back. The firi^t iS paSS«<:l 
J in RO, the second in Rl etc. 



.macro 

. if nb 

MOV 

.endc 

. if nb 

MOV 

.endc 

. i f nb 

MOV 

, endc 

. i f nb 

MOV 

.endc 

. i f nb 

MOV 

.endc 

. I f nb 

MOV 

.endc 

PTS 

,endm 



A 



RETURN A.B.C.D.e.F 
\ 
A.ROSLOTCSP) 



n 



B.RISLOT(SP) 



C.RaSLOTCSP) 







0,R3?l.0r(SP) 



t.R4SL0T(SP) 



F 



K.RSSLOTtSP) 

PC 
RtTURN 



Ki 

CvMSntK) .^M QUICK Vt:RU'> MACRO MU'OO 10 APR 84 07:5^ PAGt- 9 



STARTUP 



5EQ 0010 



?t>^ .StJTTL ^Uortup 

^bH 000.^00 . ' 200 

S^:0 OOOclOO 000167 000774 JHP MAIN ;Th:s enables XXDP* to otort the program 



' 1 

s:s 001000 .-- 1000 



jond disables loading the supervisor. 



cvMsano 

PTITRl 

?:6 

?77 
67 S 

380 
581 
5»J 
58? 
384 
58^ 
586 
387 
588 
38^ 
7^^0 

39.^ 
59^ 
394 



.^M UUICK Vl.RU 1 MACRO MK^OO 
IDATA St'TlUN") PARITY CSR TABLh 

.SBTTL PTtTBL 



[. 1. 

10 APR 84 07:55 PAGE 10 



SEQ 0011 



(Data section) Parity CSR table 



; The parity CSt^ table is located here in order to get it into hte 
;Read/Write section. 



001000 



oOllO.^ 000000 



PTTrTBl.: .BLKW 33. 



CHBUf": .WORD 



;MoxirPum of 16 CSRs. two words per CSR 
;plu^ on© word for a ter^minator , 

jWill contain any character received by KBDINT 



001104 

00 ; 106 



000000 

oooooo 



001110 oooooo 



UFOCHR: 


.WORD 





GETOUT: 


.WORD 





CCFLAG: 


.WORD 






;SAVE FUK .'irvi CHARA 
;GET OUT FLAL, 
iCONTROL C FLAG 



UFD oa/Ott/84 
UFO 02/08/84 
UFD 02/08/84 



001200 



J This is the end o*^ the section that is Read/Write during testing, 
I " " " 

It-'OO 



\-\ 



M' 



CVMSmiO .^M QUICK VhRUi MACRO Mlt?00 lO-PPR-84 07:55 PAGE 11 
rAlN ■ 11/23 PLUS - MtMORl TEST. MAIN PLOW 



SEQ ooi:;; 



?9b 

?98 

400 
401 
AO^ 
405 
404 
4 OS 

40o 
407 
408 
409 
410 
411 
41^ 
415 
414 
415 
416 
417 
418 
419 
420 
421 
422 
42J 
424 
425 
426 
427 
428 
429 
4 50 
431 
432 
4:S5 
4 3^ 
435 
436 
437 

4 5;:. 

439 
440 
441 
442 
443 
444 

445 

446 
44 7 
448 
449 
450 



C01200 
001200 
001202 
001206 
001210 
001214 
001222 
001230 
001236 
001244 
001252 



00 1254 
001256 
001262 
001270 
001276 
001300 

001306 

001312 
0013x4 
001316 
001520 
001322 
001326 

001332 
001352 
001336 
001342 
00154^5 
OOl-^^'O 
001354 
0013^0 
001360 



000240 
005767 
001074 
0.0667 
013767 
01376/ 
013767 
01376/ 
032737 
001415 



104042 
005060 
012767 
052767 
U01403 
012767 

105737 
100002 
104043 
000403 
104042 
162700 

Oior»67 



004 76 7 
J10037 
022/00 
001006 
00523/ 
005237 



.SBTIL MA.'N - 11/23 Plus Memory Test, molr. flow 

INPUTS: (III) P-ocessor is in a Reset state. 

[112] f-rom CTRLX only. SWSTAC (In XXDPO Is altered. 

riI3l - Absolute \ocation 42 has XXDPf return/Chain Mode flag. 



OUrPU'1'3: 



0U21 
CALLING SEQUENCE: 



[001] - fhe XXDP* return/Chain Mode flag in XXRTN. 
The address of ?MSTAC (in XXD!- O in SWADD. 



[ENl] Standard entry from XXDP ♦ . 

f*EN2] JMP MAIN2 

[*EN3] - Standard reotart from XXDPf. 



SUBORDINATE ROUTTNC-S CALLED: [Cll]-EMT 43 (to XXDPO 

[CL2J-WRITE [CL31-TEST [ CL4 ] -WRI TLN . 



004 724 

C04716 

000042 004672 

000030 004674 

000052 004670 

000052 004664 

000040 000052 



START 
MAIN: 



NOP 

TST SAVSP 

BNt MAINI 

MOV SP, SAVSP 

MOV a*4?. XXRTN 

MOV aO30,SAV30 

MOV a*32.SAV32 

MOV a<?52.SAV52 

BIT d40.a<>52 

BEQ 5$ 



FIRST TIME THRUOGH? 

NO SO BRANCH 

SAVE STACK POINTER 

Save the XXDP* return/Chain Mode flag In XXRTN 

Save the EMT vector 



UKD 02/09/8-4 
UFD 02/09/84 
UFD 02/09/64 
UFD 02/09^64 



SAVE LOC 52 

Are we under UFD CHAIN MODE? 

No, then cont t nue test ing 



iUFD 02/09/84 



IF WE GET HERE WE ARE IN UFO CAHIN MODE 



0O0C42 

1''7777 004630 

000100 004632 

177777 004614 
000052 



001424 
004560 



000546 
001104 
000005 

OOIUO 
001 10^) 



004767 000 70^ 



EMT 42 

CLR 42CR0) 

MOV ^^l.Uf-DCHN 

BIT ftlOO,SAV52 

BEQ 3$ 

MOV ^ l.UFDQUI 

3$: TSTB a.'>52 

BPL 1$ 

EMT *45 

BR 2S 

1$: LMT t42 

SUfJ *'a 424.ro 

25: MOV RO, SWADD 

CHKCC: CALL GETCHH 

JSR PCGETCHR 

MOV RO.SdUFDCHR 

C'lP 53. RO 

BM 1 $ 

INC a»CCM At; 

25: INC aoG-^.TOUT 

CAt L CTR! X 

JSR PC. CTRLX 



jGet DSRERR address 

ilnitlall/e DSRERR to no error 

ii-lag that Me are under UFD CHAIN MODE 



IN QUIET MODE? 
jBR if NOT 
J SET QUIET FLAG 



UFO 
UFD 
UFD 



02 '-09/84 
02/09/84 
02/09/84 



;IS THIS THE UFD MONITOR ? ;UFD 04/03/84 

iBR IF NOT ;UFD 04/03/84 

;Get the address of SWSTAC from XXDP*. 

;Go save I t 

;Get the address of dca from nionlto** 

: Adjust It to SWSTAK jUFD 02/09 --84 

I Save it In SWADD. 



iSEE IF A CHARA BfctN TYPED 



IS IT CONTRf L C 
NO SO BRANCH 
,f I ^C Fl '\o 
l.t 1 GET 0V\ FLAG 
lES 



iUFD 02/09 '84 



UFD 


0^ 


09 


■84 


UFO 


o^ 


0^* 


8*4 


UFD 


02 


O^"* 


i-14 


iiFD 


02 


O^i 


84 


UFO 


02 


0^. 


64 



\J 



Nl 



CVMSBHO JM QUICK VtRlKY MACHO MI^OO 10-APR-a4 07:55 PAGE ll-l 
MAIN - 11/23 PLUS MF.MORl lEST, MAIN •^LOW 



451 
452 
455 
454 

**56 
457 
456 
459 
460 
461 
462 
463 
464 
465 
466 
467 
468 
469 
4 70 
471 
472 
473 
4 74 
475 
4 76 
477 
4 78 
479 
480 
481 



482 
433 

464 
485 



486 
487 
488 
489 
490 
491 
492 
493 
494 
495 
496 
497 
498 
499 
500 
501 
502 



001364 
001570 
r>01372 
0013/6 



001400 
001400 
001404 
001412 
001414 
001420 
001422 
001430 
001436 
001444 

001446 
001452 



001460 
0C1462 
001466 

001472 
0014 7" 
00*.^<'C 

001502 
001502 

001506 
001506 
001512 

001516 
001522 
001524 
001532 
001532 
001540 
001546 
001554 
001562 

001564 
001570 
0015'f? 
0015/6 
001 '.00 
001602 



0057^7 0045/0 

001403 

022700 000052 

001766 



013746 
012737 
000007 
022700 

ooioi:. 

012767 
013767 
012757 
000403 

012716 
000002 



001454 012637 000010 



010706 
042706 
362706 



012705 
004767 



012705 
004 767 

005/67 
001403 
016737 

016737 
016737 
016757 
016757 
001415 

005757 
001407 
105737 
100004 
104042 
012760 



017/7/ 
001000 



000004 
004102 



004767 000506 



]5: 



TST 


UfDCHN 


BfiJ 


MAINl 


CMP 


*32,R0 


BfcU 


2$ 



IN U^D CHAIN MOnp. ? 

Nn SO BRANCH 

IS IT CONTROL I ? 

YE5 



UFD 02/09/84 
UFO 02/09/84 
UTD 02/09/84 
UFD 02/09/84 



Wt MUST TEST FOR AN ORION PROCESSOR. \T WE HAVE ONE THEN TURN OFF CACHE. 



000010 

001446 000010 

000C05 

177777 004506 

177746 004476 

001000 177/46 



001454 



MAINl 



100$: 
101$: 



0000/4 
004066 

004414 

00^*404 177/46 

004372 000052 

004 360 000030 

004354 000052 

004534 00004c 

ooiuo 

000052 

000001 000046 



MAIN2 



9$: 



MOV cJwlO. CSP) 

MOV #ioo$,ai>io 

MFPT 

CMP t5,R0 

BNt 101$ 

MOV v-l.ORIONF 

MOV 3^177746. SAvCAC 

MOV 01000.30177746 

BR 101$ 

MOV 0101$, CSP) 
RTI 

MOV CSP)»,SiMO 

MOV PC.SP 

BIC 017777, SP 

ADD 01000. SP 

CALL WRITE. OMTINPG 

MOV Of1TINPG.R5 

JSR PC. WRITE 

CALL TEST 

JSR PC. TEST 

CAL I WRITt ,^^TOI< 

MOV OMTOK.RS 

JSR PC. WRITE 

T^T L;P10N^ 

H(-(i 9$ 

MOV ". AVCAC.^.V1 '774t) 

MOV 'j'Wi2,a^?;.2 

MOV 'j/W3(" ,af??o 

MUV SAV ■ ,■ .oJ'LV-' 

MOv X>.RTN,q)v742 

BFO 2$ 

TSl bJ.VCCrLAli 

BEQ IS 

rSTH b].'?S2 

E'Pl \% 

EMT 4.' 

MOV 0I,46(R0) 



SAVE LOC 10 

SET FOR NONEX INS^ TrAP 

GET PROCESSOR TYPE 

IS IT AN ORION V 

BR IF NOT 

SET FLAG 

SAVE CACHE 

TURN 0F^ CACHE 

LEAVE NOW 

WE TRAPPED SO SF T L'P RTN 
CLEAR STACK FROM TRAP 

RESTORE toe 10 

Initialize the *;tock polntei 



Uf 
UFD 
l^D 
UFD 
UFD 
UFD 
iJfD 
UFD 
UFD 



04/03/84 
04/03/84 
04/C5/84 
04/03/84 
04/05/84 
04/05/84 
04/03/64 
04/05/84 
04/05/84 



',TD 04/05/84 
i.iTD 04/05-84 

UFD 04/03/84 



Oi Gplay the "te*Jt in progret;;s" message 



J Do all the test Ing. 



jDisplay the "OK" message 



ORION CP 7 
HR I^ NOl 
RFSTCRt CACHE 

RESIORf LOC 52 

RESTORL 10 

ResTOf^t 32 

Restore locat I on 42 . 

If not in chain mode, loop 

*C TiPFD .■• 

NO. SO BRANCH 

IS IHI'. THE UFD MONITOR .' 

BR i^ ^■0I 

VW 1 ADOH tH OC'i 
I SET PA^S CNT TO 1 



'M 04 /OS/ 84 

;U^ D 04/05/84 

jLi* 04 05 ^4 

;UFD 02 '0^* 84 

;UF D 02 '0*> MU 

iUFD 02/09/84 



LiFD 


02 


0^ 


M.J 


l'^"^ 


0-* 


C* 


84 


lii-O 


0'- 


0^ 


\^4 


I. If- n 


04 


5 


84 


>J^ D 


02 


M.Vi, 


84 



SEQ 0013 



Ut-U 0^'<>'^''^^ 



CVNSflBO 


.^M QUICK VERir^ 


MAIN 


U/25 


Pl.ur> ■ MEMORY Tl 


'^O? 


001610 


004777 


004300 


504 


001614 


000406 




S05 








506 


001616 


005737 


001106 


50 : 


0016cV 


001403 




508 


001624 


016706 


004302 


^O"-^ 


001650 


000i>07 




510 








511 


00163.^ 








00165.^ 


01.^:05 


000001 




001656 


004 :6 ; 


003 74c' 


5L-: 


00l64c^ 


00065b 





MACRO Mlt*00 10 APR 84 07:55 



PAGt 11-2 



IJ 



?% 



4$ 



.'SR PC.SXXRTN 

LiR 4$ 

TST S<>GETOUT 

DEQ 4» 

MOV SAVSP.SP 

RTS PC 

CALL WRITt.ONEWLIN 

MOV 0NEWLIN.R5 

JSR PC, WRITE 

BR MA IN I 



jReturn to XXDP * CHAIN FILE 
iCHAIN RTN 

I GET OUT FLAG SET? 
I NO SO BRANCH 
iRESTOR STACK PIONTFR 
iRETUHN TO XXDP* MONITOR 



lUfD 02/09/84 

iUFD 0i?/09/84 

I'JfD 0^/09/84 

tUFD 02/09/84 

lUf'D 02/09/84 



I Do a return ond line feed For multiple passes. 
(Loop 'f multiple Choln Mode passes. 



SEQ 0014 



c- 



KTINT 
51 ' 

5.n 

530 



5?1 

535 
554 

535 



.^M liUICK veRlKl MACRO MU^OO 10 APR 64 07i55 PACit. Ir? 

HANDLt MtMORH MANAGt.MhNT TRAPb 



SEQ 0015 



001644 004736 

001646 

O0U46 010546 

001650 004767 005146 

001654 

001654 012605 

001656 004 76 7 005562 

001662 01273/ 000001 177572 

0016 70 

0C1^ '0 012605 

001672 000002 



.SBTTL KTINT - Handle Memory Manao*"**'^! traps 

ilNPUTS: [Dill TKTERR, the address of the error meosng^? table. 



I 

; OUTPUTS: 

i CALLING SEQUENL. 



[ADOl] - KT trap et^ror message to the console. 
[*AV2] - Trap through vector 250. 



I SUBORDINATE ROUTINES CALLED: fCul] -ERROR. 



KTINT: JSR 

PUSH 

MOV 

JSR 
CALL 
MOV 
JSR 

MOV 

POP 

MOV 
RTI 



PC.a(SP)* 

R5 
R5,-(SP) 

PC. TKTERR 
ERROR. CSP)* 
CSP)».R5 
PC, ERROR 



(Rout ine locater . 

;S«ve the parameter passing register. 



(Get the address of the error message table. 
(Signal the error using the table address. 



dMMUENA . aOMMUSRO j Reset Memory management. 

(Restore the register. 
(Return from interrupt . 



R5 
(5P)»,R5 



CVnSHRO .?M L^UTCK vtRin 

PTUNT HANme: parity traps 



5?^ 
540 
Ml 

M4 

M? 

54.' 
549 
549 
5S0 
551 

555 
554 

sss 

556 



I),' 

MACRO Mlc?00 10 -APR H4 07:55 PAGt. 15 



0016M 004736 



55 7 
556 
559 
560 
561 
562 
5^5 
564 
565 

566 

56 " 
568 
56'^ 
5/0 
5:1 
5/C 
5 ''• 

S7< 



001676 
001676 

001700 
001704 



010046 

012700 
000401 



001706 0057,?0 



001710 

001 ;ia 

001 /14 
001714 
001716 



001724 

001.V6 
001750 

001754 
C01754 
575 001736 



005710 
001005 

012600 
000167 

005750 
100570 

005210 
012750 



012600 
000002 



001000 



004614 



000001 



SEQ 0016 



SBTTL PTYINT^ Handle Parity traps 

INPUTS: [DIl] -The address of the parity CSR table (PTYTBL). 



OUTPUTS: 



CALLING SEQUENCE: 



[001] -The CSR which causec' the trap Is reset for write 

good parity, traps enabled. 
[D02] -The error count associated with the CSR Is 

incremented. 

[♦AV21 CTrap through vector 114) 



COMMENTS: 



If no CSR can be found which caused o trap, exit to UNXINT, 
to sJo»^ol an unexpected interrupt. 



SUBORDINATE ROUTINES CALLED: [vCLl] - UNXINT. 

iRout ine locater . 

jSave a work ing reg! ster . 

;Address of PTYTBL in the working register. 

iGet paist the error count. 

iCheck for the table terminator. 

t 

:If terminator found, restore RO 

(And go •signal an uneKpected trap. 

jCheck the CSR for a parity error. 
I 

iSump the error count. 
(Reset the Parity CSR. 

(Restoi^e the wori« Ing register^ 

(Return from trap. 



PTYINT: 


JSR 


PC.SCSP)* 




PUSH 

MOV 


RO 
RO.-CSP) 




MOV 
BR 


<>P1YTBL.R0 


H: 


TST 


(RO). 


2$: 


TSV 
BNE 
POP 
MOV 
JMP 


tRO) 
5* 

RO 

CSP)..RO 

VCT114 


3$: 


TST 
BPL 


aCRO)* 




INC 
MOV 


(RO) 

oi.a-CRO) 




POP 
MOV 

RH 


RO 
(SP)^,RO 



E-] 



CVMSt^liO 


.^M UUICK VhRUl 


UNXINT ■ 


HANDLE 


UNtXPtCTED INTEI 


s.*r 








S'vH 








s» 








5j?o 








S81 








Sv^O 








Si? 5 








564 








585 








586 








58.- 








588 








589 








5^0 


001740 


004 767 


004454 


591 








59^ 


001744 


162616 




59? 


001746 


lb2716 


OOOOO'l 


594 








595 


00175? 


011646 




596 


001754 


010566 


000002 


597 








596 


001 VhO 








001 /vv! 


01^60' 






00176? 


004^0.' 


002700 


599 








60C- 


001766 








0017dS 


01. "605 




601 








002 


oowrc 


OOOOOc- 





MACRO M1200 10 -APR -84 07:55 PAGE 14 



.SBTTL UNXIN; Handle unevpected Interrupts. 

(INPUTS: [Oil] The address of the vectors table. 



SEQ 0017 



i OUTPUTS: 
1 



[ADOl] - Error message to the console. 



; CALLING SEQUENCE: 



[*AV3] Trap through any unused vector. 



I COMMENTS: 



UNXERR does the error handling for thi^ rou*-'.rie. 



(SUBORDINATE ROUTINES CALLED: ( CLl 1 -UNXERR . 

jGet the address of the vector table. 

t 

J Form the address of tKiv trapping vector. 

(Form a stack frame and «avc R5. 
; 

;Pa9s the vector address to the error handler. 



(Restore H5. 

;Return from Interrupt. 



JSR 


PC.VCTORS 


SUB 
SUB 


(SP)»,(SP) 
^4 . C SP ) 


MOV 
MOV 


CSP).-(SP) 
R5,2(SP) 


CALL 

MOV 

JSR 


UNXERR. (SP) 

(SP)*,R5 

PC.UNXERR 


POP 

MOV 


R5 
(SP)*.R5 



RTI 



' "1 



001772 004756 



CVMSnnO JM IK'ICK Vt-RII- 
KBDINT ■ HANDLt CONSOLE 



b04 
t^O^ 
b06 
607 
b08 
gO^ 
MO 
bU 
61^ 
61? 
bl4 
615 
616 
617 
618 
619 
620 
621 
622 
625 
624 

626 
627 
628 
629 
630 
651 
652 
653 
654 
655 
656 
657 
658 
639 



1 MACRO M1200 10-APR 84 07;55 PAGH 15 
KfeYBOARD INTERRUPT'i. 



SEQ 0018 



640 
641 



001774 
001776 
002004 
002012 
002016 
002020 
002026 

002030 
002036 
002040 
002044 
002046 
002054 
002056 

002060 
002064 

002070 
002076 
002076 

002102 



000240 
017737 
042737 
005767 
001004 
022737 
001420 

022757 
001410 
005767 
001416 
022757 
001405 
000411 

005257 
005257 

015737 

004 767 
000002 



004140 
177600 
004104 



001102 
001102 



000030 001102 
001102 



000003 
004054 
000032 



001110 
001106 
001102 

000 lb4 



001102 



001104 



.SBTTL KBDINT - Handle console keyboard Interrupts. 
iINPUTS: [Dill The input character. 



I OUTPUTS: 



[DOll - The character is placed In CHBUF . 



CALLING SEQUENCt: 



[*AV4] - Interrupt through vector 60, 



COMMENTS: 



If the input character Is a Control X, exit the program via 
CTRLX. 



; 

iSUBOROINATE ROUTINES CALLED; [ ♦CLl ] -CTRLX. 



KBDINT: JSR 

NOP 
MOV 
BIC 
TST 
BNE 
CMP 
BEQ 



2$ 



4$ 

5$ 

6$ 



Q$ 



CMP 
BEQ 
TST 
BEQ 
CMP 
BtQ 
BR 

INC 

INC 
MOV 
CALL 
JSR 

RTI 



PC.acsP)* 



iRoutine locater. 



jUrO 02/08/84 
a^ BBUF . SOCHBUF tPut the character In CHBUT . 
0177600. a#CHBUF (Strip the character to 7 bits. 



UFDQUI 

2$ 

d30.5)#CHBUF 

6$ 

*3 . aoCHBUF 

4t 

DFDCHN 

65 

«3c-.S^/CHBUF 

5$ 

8$ 



lis IT UFD QUIET MODE? jUFD 02/08/84 
;DCN'T TEST tx IF IT IS jUFD 02/08^84 
tSee if the character is Control X. 
;IT IS SO GOTO CTRLX :UF0 02/08/84 



lis IT tc ? 
iYES, SO BRANCH 
lUFO CHAIN MODE ? 
(LEAVE NOW IF NfT 
;IS IT A tZ ? 
(tES. SO LEAVE 
(IGNORE CHARACTER 



a«CCf"LAG (SET tc FLAG 

aOGETOUT ;SET GET OUT FLAG 

affCHBUF.aftUFOCHR (SAVE IT 

CTRLX (If it is. Goto CTRLX. 

PC.CTRLX 

(Return from interrupt. 



(UFD 02/03/84 
(UFD 02/08/84 
(UFD 02/08/84 
(UFD 02/08/84 
tUFD 02/08/84 
[LIFD 02/08/84 
(UFD 02/08/84 

[UFO 02/08/84 
(UFD 02/08/84 
(UFO 02/08/84 



G? 



CVMSBRO .■'M QUICK VF.RIK1 
CETCHR (WRITE PACKAGE) GET A 

64o 
64: 
M8 
649 
650 
6rU 

ere 

653 
654 
655 
656 00^^104 

657 ooauo 

658 

659 002112 005057 00U02 

660 002116 000405 
661 

662 002120 105777 004014 

663 002124 100002 
664 

665 002126 117700 004010 

666 

667 002152 04270C 177600 

668 

669 002156 

002136 000207 



MACRO M1200 10-APR-fl4 07:55 PAGE 16 

SINGLE CHARACTER INPUT FROM THE 

.SBTTL GETCHR - CWrlte Package) Get a single diaracter input from the console 

INPUTS: [Oil] CHBUF. 

[*DI2l - The input character. 



SEQ 0019 



015700 001102 
001405 



OUTPUTS: 



[OEl] - RO contains the character, stripped to / bits. If no 
character is received, RO is returned zero. 



CALLING SEQUENCE: 



CALL 



GRTCHR 



SUBORDINATE ROUTINES CALLED: None. 

; Check the character buffer. 
I 

;If a character was In CHBUF, clear CHBUF. 
tAnd exit. 

tCheck for Inputs. 
I If none, get out . 

i If inpuc , get I t . 

iStrlp to 7 bits. 



GETCHR: 


MOV 
BEQ 


S/»CHBUF,RO 




CLR 
BR 


S<?CHBUF 


1$: 


TSTB 
BPL 


aKBCSR 
2$ 




MOVB 


3KBBUF , RO 


2$: 


BIC 


*17 760O.RO 




RETURN 
RTS 


PC 



CVMSBPO 


.^H QUICK VtRIKl 


PRTCHR 


CWRITt 


PACKAGE") DISPL 


b.'l 








6 /J 








t>7? 








t>74 








r>:5 








o-'6 








^ T" 








6V8 








679 








680 








681 








68.^ 








605 








684 








t?8S 


002140 


005 76 7 


003756 


68b 


00ai44 


001401 




687 


00P146 








002146 


000207 




688 








689 


0021S0 








002150 


010046 




690 








691 


002152 


105777 


003766 


69a 


002156 


100375 




695 


002160 


110577 


003762 


694 








695 


002164 








00P16* 


004 767 


177714 


696 


002170 


022700 


000023 


697 


002174 


001005 




698 








699 


002176 






700 


002176 








002176 


004 767 


177702 


701 


002202 


022700 


000021 


70.^ 


002206 


001375 




705 








704 








70S 


002.'10 








002210 


012600 




706 


00221^:' 








002212 


000207 





MACRO M1200 



lOAPR-84 07:55 PAGE 17 



SEQ 0020 



.SBTTL PRTCHR - (WRITE PACKAGE) Oisplay a single character ort the console 
jINPUTCj: [lEl] R5 contains the character to be displayed. 



OUTPUTS: 
COMMENTS: 



[DOll - The character is displayed on the console. 



If an XOFF is received from the console terminal, this 
routine waits for an XON before returning. 



CALLING SEQUENCE: 



CALL 



PRTCHR. lEl 



; 

;SUBORDINATt ROUTINES CALLED: ( CLl ] . [ ♦CL2 ) -GETCHR . 



PRTCHR: TST 
BEQ 

RETURN 
RTS 

FPRTCH: PUSH 
MOV 



1$ 



2$ 



3$: 



TSTB 

BPL 

MOVB 

CALL 
JSR 
CMP 
BNE 



CALL 
JSR 
CMk 
BNE 



POP 
MOV 

RETURN 
RTS 



UFOQUI 
FPRTCH 

PC 

RO 

RO. (SP) 

SDSPCSR 

li 

R5.o)OSPBUF 

GETCHR 
PC, GETCHR 
*XOFF,RO 
3$ 



GETCHR 
PC. GETCHR 
^XON.RO 
2$ 



RO 
CSP)f.RO 

PC 



(Are we running under UFO ? 
J Yes, then skip the typeout 

J UFO 02/08/84 



J Save RO. 



t Check the transmit ready b ! t on tne console 
jif not ready, wait for it. 
1 Send the character. 

;Get an input character. 

J See If it is on XQFF . 

J If not, ignore It and get out, 

tif XOFF . wait for an XON. 
iGet a character. 

iSee If it Is on ^UN. 
jIf not, loop and wait. 
:If XON, return, 

{Restore RO, 



r:: 



CVMSRBO .'M QUICK VtRU > HACRO M1^00 lO-APR-84 07:55 PAGt. 18 
TtST TtST ALL OF MAIN MEMORY . 



VIO 
711 
71J 

;i? 

714 
■-IS 

71; 
;i« 

7 JO 

7.:i 

723 



7^4 
725 



726 
727 



728 
729 

7.^0 
731 

732 
735 

734 
735 



002214 
002216 
002216 
002222 
002224 
002224 
002230 
002252 
002232 
00225^ 
002240 
002242 
002242 
002246 
002250 
002250 
00225^ 
002256 
002256 
002262 
002264 
002264 



000240 

004 767 
000240 

004 76 7 
000240 

010005 
004 767 
000240 

004 76 7 
000240 

004 767 
000240 

004 767 
000240 

00020V 



000250 
000420 

000750 
001172 
001212 
001530 



.SBTTL TEST - Test all of moln memory. 

jINPUTS: [III] The processor is in a Reset state. 



J OUTPUTS: 



[ADOl] - Memory is sized. The si^re and test time is displayed. 
[AD02] - Memory Is tested. Any errors a:^e displayed on the 
console. 



CALLING SEQUENCE: CALL 
SUBORDINATE ROUTINES CALLED: 



TFST 



[CL1]-MAPINI [CL2]-SIZMEM fCL3]-TPARTY 

[CL4]-TL161< [CL5] -TRESl rCL6]-CPARTY 



T^^.STi 



NOP 




CALL 


MAPINI 


JSR 


PC.MAPINI 


NOP 




CALL 


SI2MEM 


JSR 


PC.SI^MEM 


NOP 




CALL 


TPARTY.RO 


MOV 


R0,R5 


JSR 


PC.TPARTY 


NOP 




CALL 


TL16K 


JSR 


PC.TL16K 


NOP 




CALL 


TREST 


JSR 


PC.TREST 


NOP 




CALL 


CPmRTI 


JSR 


PC.CPARTY 


NOP 




RETURN 




t^TS 


PC 



I ;UrD 03/13/84 

iSet Initial conditions for testing. 

; lUFD 05/15/84 

:Sire the memory and get back the highest 

;responding PAR setting. ;UrD 03^5/84 
jTest parity detect and enable parity traps. 



iPass the highest PAR setting. ;UFD 03/13/84 
;'iest the low 16K words of memory. 



I Test whatever Is left. 



;UED 03/13^84 



;Poss the highest PAR setting. lUfO 05/15/84 
1 Check for any parity errors during testing. 



jReturn, 



J UFO 05/13/84 



SEQ 0021 



j;^ 



CVHSRRO .'M QUICK VhRlf^ MACRO M1200 lO-APR-84 07:55 PACit 19 
CTRLX HANDLt A CONTROL X KEYBOARD INPUT 



SEQ 0022 



;?.■ 
v?^ 

7A0 
741 
74J 
745 
744 
745 
746 
74? 
748 
749 
750 
751 
75? 
755 

754 

755 
756 
757 
758 
759 
760 



7t>l 
762 



765 



764 

765 
766 
767 
768 
769 
70 

n 

772 
7/.^ 



f ■ 



7 74 
7 75 
776 
77/ 
7/8 
7 79 
780 
781 
782 
78.^ 
784 
785 
/8b 



002266 
002272 
0022 76 
002302 

002506 
002306 

002512 
002316 
002522 
002326 
002332 
002534 
002334 
002340 
002544 
002552 
002552 
002356 
002362 
002362 
002366 

002572 
002376 
002402 
002404 
002412 

002414 
002416 

002420 
002424 
002426 
002452 

0024 54 

002440 
002442 
002444 
002446 
002454 
00246C 
002464 



015701 
013702 
015705 
013704 



010137 
010257 
010557 
010437 
000240 

012705 
004767 
062737 

015705 
004767 

012705 
004767 

016700 
005767 
001014 
02^737 
001025 

10^710 
001423 

122720 
001575 
112740 
000415 

005737 
001412 
105/20 
0013/6 
] 12760 
11^/20 
11?720 
1050X0 



001102 
001104 
001106 
001110 



004767 001742 



000101 
000130 

001110 



00005/ 
000136 
000103 



. S8TTL CTRLX - Handle p Control X keyboard input 

INPUTS: [Oil] 5WADD. 

OUTPUTS: [DOl] - SUSTAC (In XXDPO \s altered to disable Chain Mode. 
jCALLING SEQUENCE: CALL CTRLX 

SUBORDINATE ROUTINES CALLED: TCLll-SETBAK rCL2] MA.TN2. 



001102 
001104 
001106 
001110 



000136 
177604 
000100 001104 

001104 
177566 

000040 
177556 

003514 
005516 

000130 001104 



17V777 



CTRLX 


: MOV 


SOCHBUF.Rl 




MOV 


a^UTOCHR , R2 




MOV 


SOGET0UT,R3 




MOV 


S«CCFLAG.R4 




CALL 


StTBAK 




JSR 


PC.SETBAK 




MOV 


Ri.aocHBur 




MOV 


R2,a*UF0CHfi 




MOV 


R5,aoGtiOUT 




MOV 


R4.S0CCFLAG 




NOP 






CALL 


rPRTCH,<^' t 




MOV 


«■ t,R5 




JSR 


PC.EPRTCH 




ADD 


*100.S*UFDCHR 




CALL 


FPRTCH.Q^UFOC 




MOV 


S*UFDCHfl,R5 




JSR 


P^.I-PRTCH 




CALL 


FPRTCH.dAO 




MOV 


040, R5 




JSR 


PC.FPRTCH 




MOV 


SUADD.RO 




TST 


UFOCHN 




BNE 


2J 




CMP 


Ol.'O.atfUFDCHR 




BNE 


8$ 


1$: 


:STB 


(RO^ 




BEQ 


8$ 




CMPR 


«' A.CRO). 




BNE 


1$ 




MOVB 


a X , ( RO ) 




BR 


8J 


2$: 


TST 


aoCCFl AG 




BtQ 


8* 


5$: 


TSTH 


CRO)» 




BNE 


5$ 




MOVB 


^'/, ICHO) 




MOVH 


0' t .(RO). 




MOVB 


^'■C.CRO)* 




CLRB 


CRG> 



J SAVE LOCATION 
I SAVE LOCATION 
I SAVE LOCATION 
I SAVE LOCATION 



UFD 02/10/84 
UFD 02/10/84 
UFD 02/10/84 
i.'FO 02/10/84 



;Restore original program location and reset. 



jRESTORE LOCATION 
iRESTORE LOCATION 
jRESTORE LOCATION 
jRESTORE LOCATION 

jPRINT UPARROW 

jMAKt CHARA ASCII 
jPRINT CHARACTER 

iPRINT A SPACE 



jUFD 02/10/84 

;UFD 02/10''84 

;UFD 02/10/84 

;L#0 02/10/84 

:UFD 02/08/84 



;UFD 02/08/84 
iUFD 02/08/84 



;UFD 02^08/84 



jGet the address of 5WSTAC In XXDP*. 
jUFD CHAIN MODt ? ;Uf0 02/08/84 



;>ES, SO BRANCH 

lis IT AN X ? 
tl eAVF IF NOT 



L*D 02/08 84 
L»D 02' 09/84 
L*D 02/08/84 



;Cneck for the stack terminator. 
; If found, get out . 

if Ind the auto mode swItcH. 

i 

iReplace It with the exit switch. 

il»D 02/08 '84 



; IS IT Uf'O AND *C ? 
iNO, SO BRANCH 
jFINO END OF STACK 

J I UAD SLASH 

1 1 CAD UPARROW 

tl OAD C 

J SET END UF STACK 



;U^D 02. 08/84 
;L*D 02/08^84 
;UPO 02 ■'08/84 

jUf 02/08-84 
^If D 02^08 84 
iL*D 02-08-84 
tUFO 02/0^/54 



CVMSBHO .'H l3urCK VhRlKi MACHO Ml.^00 10-APR 84 07:55 PAGt 19-1 

CTRLX HANDLE: A CONTROL. X Kf-YBOARD INPUT ""^ "* ^^^^ 

:s : 

ViJd 0024d6 004767 i;'70a4 8$: JSR PC.MAINa ;0otO MAIN CtN^). 



L r! 



CVHSBBO 0-."*M QUICK VBRIFi HACRO M1200 10-APR-e4 07:55 PAGt 20 
HAPINI StT INITIAL PROGRAM CONDITIONS 



SEQ 0024 



^90 








7^1 








79^^ 








7Q5 








794 








:^s 








"96 








■9.' 








7Q8 








799 








800 








801 








80^ 








S07> 








804 








805 








806 








807 








808 








809 


0024 72 


016700 


005414 


810 


002476 


042700 


007777 


811 


002502 


022700 


150000 


81? 


002506 


001407 




813 


002510 


004767 


004330 


814 


002514 








002514 


012605 






002516 


004 767 


002722 


815 


002522 


005067 


003366 


816 








817 


002526 








002526 


004767 


0007 72 


818 








819 


002532 


004767 


003662 


820 


002536 


012600 




821 


002540 


012701 


100000 


822 


002544 


012702 


000100 


823 








824 


002550 


010021 




825 


002552 


062700 


000004 


826 


002556 


012721 


000340 


827 


002562 


077206 




828 








829 


002564 


004 767 


177054 


830 


002570 


012637 


100250 


831 


002574 


004 767 


17 70 74 


632 


002600 


012637 


100114 


855 


002604 


004767 


17^62 


834 


002610 


012637 


100060 


835 








856 


002614 


004 767 


003530 


637 


002620 








002620 


012605 






00^1622 


004767 


001520 


8 38 








8';9 


002626 


012767 


100000 003262 


840 


002654 


042706 


1.60000 


641 


002640 


012777 


000100 003272 



SBTTL MAPINI - Set initial program conditions 

INPUTS: [III] SWADO is set up with the address of Sl-'STAC in XXDP*. 



OUTPUTS; 



[♦001] 

[002] 

[0031 

[004] 

[ADOl] 



[AD02] 



XXRTN is cleared if XXDP* is incorrectly located. 

The SP is adjusted for virtual memory 1000 and down. 

Keyboard interrupts are enabled. 

The virtual vector area is loaded with vectors. 

The program is in 16K to 20K area, the nent 4l< 

tested. 

Memory Management is mapped and enabled, 

priority zero Is set. 



rS 



CALLING SEQUENCE: 



CALL 



MAPINI 



COMMENTS: 



All registers are corrupted by this routine. 



SUBORDINATE ROUTINES CALLED: [*Cl1] -ERROR fCL2]-BUMP [CL3]-5ETABL 



MAPINI: MOV 
BIC 
CMP 
BEQ 
JSR 
CALL 
MOV 
JSR 
CLR 



1$ 



2$ 



CALL 
JSR 

JSR 
MOV 
hOV 
MOV 

MOV 
ADD 
MOV 
SOB 

JSR 
MOV 
JSR 
MOV 
JSR 
MOV 

JSR 
CALL 
MOV 
JSR 

MOV 
BIC 
MOV 



SUADD.RO 

*7777.RO 

<>150000,R0 

li 

PC.TL0W52 

ERROR. (SP)* 

(SP)».R5 

PC, ERROR 

XXRTN 

BLtIP 

PC, BUMP 

PCVCTORS 
(SP)*.R0 
0100000, Rl 
ttSA, .R2 

RO.CRD* 
04. RO 
0340. (RD* 
R2 2! 

PC.KTINr 
(SP)». 30100250 
PC.PTyINT 
(SP)», 30100114 
PC.KBDINT 
(SP)* .30100060 

PC.TKMAPl 
SEIABL ,CSP)* 
(SP)».R3 
PC. SET AOL 

0100000. RLLfLG 

0I6OOOO.SP 

OlOO.yKBCSR 



I Get the address of SWSTAC (in XXDPO for 
Strip unused bits. 
Check for correct location. 

If incorrec;, get the message table address. 
Do the ^rror handling. 



iOisa,.le return to XXDP* 

jEnsure the program is In the 16K area, 

itesc the segment address table area. 

;Get the address of the vectors table. 

I 

tSet Rl to address the current 4K , 

{Set a counter to load the vector area. 

;Load a vector . 

I Set up the next addrt-ss. 

! 

[Until all 64 are loaded. 

(Get the address of the KT trap handler, 

iSet up the KT trap vector. 

jGet the address of the parity trap handler 

(Set up the pa'Ity trap vector. 

(Get the address of the keyboard Inter»-upt 

(handler and set up the keyboard vector. 

(Get the address of the initial map. 
(Go set it up. 



(Set RELFL G to reset the SP 
[Adjust the stack po ' nter . 
(Enable keyboard Interrupts: 



don' t relocate 



M ) 



LVMStUiO .>M QUICK VtRlM MACHO M1200 lO-APR-84 07:55 PAGE 20-L 

ccn 00?' 
hAPINl • StT INirmL PROGRAM CONDITIONS 

840 002646 RETURN 

002646 000207 RTS PC 



M-> 



n:-^ 



CVMSBBO ^^M QUICK Vt-.RIFY MACRO M1200 lO-APR-84 07j55 PAGE 21 
SI2MF.M - DETbRMINt THE MEMORY SIZt 



SEQ 0026 



84S 
846 
84 7 
848 
849 
850 
851 
Sb2 

8r>? 

854 
855 
i-56 
857 
i?5W 

86C' 
861 
86 V 
66 5 
864 
865 
866 
867 
868 
869 
8 70 

8 a 

872 

873 
874 
8 75 
8 76 
877 

878 
8 79 
880 
881 



882 
883 



884 
885 
88*. 

888 



002<i50 000240 

002652 

00:>632 004567 003174 

0026:^6 013746 000004 

00266? 004 76 7 000072 

002666 012637 000004 

002672 012700 I77f,00 

0026 76 162700 000200 

002702 0?fn-,7 17254: 

0J2706 012/37 000000 037776 

0\'^7:.4 001370 

002 /r6 012637 000004 

002 722 010002 

002724 062702 000200 

002730 006202 

002732 042702 100000 

002736 006202 

002 740 006202 

002742 006202 

002744 

002 744 010205 

002 746 004 76 7 000020 

002752 

002 752 10066 000002 

002756 000207 



CJ2760 004 7 36 

00.' 762 042 766 
OOf 770 000002 



. fiRTTL SIZMEM - Determine tne memory size 
INPUTS: [III] Memory management is set up and enabled (22 bit). 



OUTPUTS: 



[CF.l] - The highest valid (responding) PAR setting. 
[ADOl] - The results of the sizing are displayed. 



CALLING SEQUENCE: 



CALL 



SIZMEM 



SUBORDINATE ROUTINES CALLED: [CLll-DSPSIZ 

lUFD 03/15/84 

i Preserve r-^glsters . 

;Sove the current timeout vector. 

jGet the address of the local timeout handler, 

,'Put it in the vector location. 

iSet RO to the I/O page PAR setting. 

;Set RO to the ne\t lower PAR setting. 

;Use it to set PAR 1. 

; Address something In PAR 1 range. 

jif nothing there, try next lower setting. 

jflestore the timeout vector. 

;Scale the PAR setting into K bytes. 

; D I V I de by 16 . 



SIZMEM: NOP 

PRESERVE 

JSR R5,PREG05 


MUV 
JSR 
MOV 


aoTIMOUT, -(SP) 
(SjJ)*,a#TIMOUT 


MOV 


0177600. RO 


1$: SUB 
MOV 
MOV 
8NE 


O200.ro 
RO.SOKPARl 
00.3037776 
15 


MOV 


(SP)*,ulOTIM0UT 


MOV 
ADD 
ASR 
BIC 
ASR 
ASR 
ASR 


R0.R2 

0200. R2 

R2 

100000. R2 

R2 

R2 

R2 


CALL 

MOV 

JSR 


DSPSU.R2 

??2.R5 

PC.DSPSI/ 



RETURN RO 

MOV RO.ROSLOTCSP) 

RTS PC 



2$ 



000004 000002 



JSR 

BIC 
RTI 



PC.tQ(SP)* 
04,2(SP) 



iGo display the memory size and test time. 
i Return the Y' ighest responding PAR sett Ing. 

iLocater for the local handler. 

jClenr the .' flag in the saved PSU. 
i Return from interrupt. 



B 5 



CVMSBBO ^^H QVlOy VfcWlM MACRO 

DSPSK* ■ DISPLAY MEMORt SlZh. AND TEST 



8*^6 
89,' 
8^8 

901 
90J 
905 
904 



905 
906 
907 
908 



909 
910 



91i 
913 
915 
914 
915 
916 
917 
918 



919 
920 
921 
922 
925 



924 
925 
926 



92 7 
929 



002772 
0027 74 
002774 
005000 
005002 

005006 
0050O6 
005010 
005014 
005020 
005024 
005026 
005026 
005052 

003056 
005042 
005044 
005046 
005052 

003054 
003054 
005056 
005062 
005066 
005072 

003074 
005076 
0C5100 
005100 
005104 
005110 

005114 
005114 
003116 
005122 
005126 
005152 



000240 

00456 7 
010502 
012746 



010205 
012704 
012703 
004767 
060016 

012705 
004767 

070227 
010205 
005002 
071227 
010301 



010205 
012704 
012705 
004 76 7 
060016 

005700 
001406 

012705 
004 76 7 
062716 



O101O5 
012704 
012705 
004 76 7 

0600 1*^ 



005052 
000041 



000000 
000012 
002614 



000020 
002546 

062400 



000074 



000000 
0OO012 
002546 



00004 / 
0024 74 
00001.7 



000000 
000012 
002506 



M1200 10-APRB4 07J55 PAGE 3;> 
TTMt 

.S6TTL OSPSI^ Display memory fii2« anc^ t«st tlm* 
(INPUTS; (lEl) Memory «)/• !n Kbytes. 



SEQ 0027 



(OUTPUTS: 



Size and test time are displayed on the console. 



CALLING SEQUENCE! 



CALL 



DSPSIZ.IEl 



1 
; 

jSUBORDINATE ROUTINES CALLED: [CLll-WRIUSN 
I ( ♦CL41 -WRITE 

i [CL71-PRTCHR 



[CL2] -WRITE 
rClSl WRIUSN 



[CL3) WRIUSN 
[*CL6l -WRITE 



DSPSIZ! NOP 

PRESERVE 
JSR 
MOV 
MOV 

CALL 

MOV 

MOV 

MOV 

JSR 

ADD 

CALL 

MOV 

JSR 

MU. 
MOV 
CLR 
DIV 
MOV 

CALL 

MOV 

MOV 

MOV 

JSR 

ADD 

TST 

BEU 

CALL 

MOV 

JSR 

ADO 



IJ 



R5,PREG05 
R5.R2 
055. .-(SP) 



(UFO 03/13/84 
(Preserve registers. 

(Put sl/e in Kbytes In R2 . 

ilnitiali/e character count on the stack. 



WRIUSN,R2,tf0,*l0, (Display the memory sl/e Ir K bytes. 

R2.R5 

*0,R4 

010. .R5 

PC.WRIUSN 

RO.CSP) 

WRITE, OMTTIMb 

0MTTIME.R5 

PC. WRITE 



(Update the character count. 
(Display the '*test time" messa^. 



0TTMSCA,R2 

R2,R5 

R2 

060. .R2 

R5,Rl 



(Scale K bytes Into test time In seconds. 

( 

1 

(Convert seconds to minutes and seconds, 

(Save second*;. 



WRIUSN.RP.OO.i^lO. (Display test time minutes. 

R2,R5 

00, R4 

010., R5 

PC.WRIUSN 

RO.CSP) 



RO 
li 

WRITE.OMTTIMM 
0MTTIMM,R5 
PCWRITF 
010. ,CSP) 



((-ipdate the character count. 

1 Check for no m I nutcs , 

(If no minutes, don't display "minutes*'. 

(Display "minutes. 



(Update the character count. 



003134 005700 



CALL 

MOV 

MOV 

MOV 

JSR 

ADD 

T5I 



WRIUSN.RI.OO.OIO. (Display seconds. 

RI.R5 

00. R4 

010. .R5 

PC.WRIUSN 

RO.(SP) (Update the character count. 



RO 



(Check for no ueconda* 



CVMSRllO 0-.^M QUICK Vf-.Rlf > MACRO MU''00 
OSPSl/ DISPLAY MEMOR-r SIZE AND TEST TIME 



C3 

10 -APR ttil 0/i55 PAlifc L^'-l 



^51 



955 

9^6 
957 

958 
959 
■^40 
^41 
94^ 



943 



005136 
005140 
003140 

003144 
003150 

003154 
003156 

00316? 
003 16<^ 
005166 
003170 
005174 

0031/6 
003176 
00520? 
005^06 
003206 



001406 

012705 

004/67 
062716 

012600 
012705 



004 767 
005200 
022700 
101372 



012705 
004 76 7 

000207 



000062 
0024 54 
0000 U 



000056 

176752 
000107 



000040 
176732 





8EQ 


21 




CALl 


WRITE. ffMTAlL 




MOV 


^MTMIL ,R5 




JSR 


PC. WRITE 




ADD 


^9. .(SP) 


2$: 


MOV 


(5P)..R0 




MOV 


0' . ,R5 


3*! 


CALL. 


PRTCHR 




JSR 


PC.PRTCHR 




INC 


RO 




CMP 


<)71. ,RG 




BHI 


3$ 




CAIL 


PRTCHR, 040 




MOV 


040. R5 




JSR 


PC.PRTCHR 




Pt TURN 






RTS 


PC 



SEQ 0026 



ilf no seconds, don't display "fjeconds" 
iD I splay seconds messdge. 



I Update the character count. 

iGet the character count. 
iSet up to print dots. 

{(display a dot , 

iBufTip the character count. 

iPrint until the Line is 71 characters. 



tPrint a space. 



CVMsAhO .^M QUICK VMnfi HACRO 
TPART^ t-.NABl.t PARlTt TRAPS AND TEST 



954 
^60 



961 
962 
963 
964 
965 
966 



967 
968 

969 
970 
971 

972 
975 
974 

975 
976 
977 
978 
979 
980 
981 
982 
983 
984 
985 
986 
987 
988 
989 
990 
991 
99? 
995 
^V94 
'■*95 
99b 



003^10 
003212 
005212 

005216 

003222 

003226 
005226 
003250 

003234 
003234 
003240 
003244 
003250 
003252 

003254 
003254 
003260 

003264 
0032/0 
003272 
005274 
003300 
005502 
005506 
003312 
003516 

003522 
003526 
005352 

0053.^4 

005356 
003540 
005342 
005544 
005546 



000240 
004567 
012704 
004767 



012605 
004767 



013746 
004767 
012637 
005001 
005002 



004767 
012703 

010357 
005702 
100403 
110157 
000402 
010137 

013700 
O.VC137 
015700 

062705 
020566 
101"'54 

005101 
100746 
005702 
100402 
005102 
000742 



002634 
001000 
003772 

000422 



000114 
000116 
000114 



001066 
001600 

172342 



057777 

0?.7 7 76 

0?.7776 
037776 
057776 

002000 
000016 



M1200 10 APR 84 07:55 PAGE 23 
PAR1T1 Oe.Tl-CT 

SBTTL TPARTY - Enable polity traps and test parity detect 

INPUTS: [lEl] The highest valid PAR setting. 

[Ill] - Memory Management Is set up and enabled (22 bit). 



StQ 0029 



OUTPUTS: 



[Gin - PTYTBL, the parity CSR table is established with all 

error counts initialized to zero. 
tOl2] - All live parity CSRs are set for write good parity, 

traps enabled. 



CALLING SEQUENCE: CALL 
SUeOROINATE ROUTINES CALLED: 



TPARTY.IEl 
(CLIJ CPARTy 



t 



TPARTY; NOP 

PRESERVE 
J5R 

MOV 

JSR 



1$ 



2$ 



5$: 
4»: 
5J: 



R5,PREG05 

0PTYTBL.R4 

i^CWRNGPA 

CALL SPARTY.(SP)* 

MOV (SP)»,R5 

JSR PC.SPARTY 

PUSH 30114 

MOV a«114. -(SP) 

jSR PC.7t 

MOV (SP)*, 5)0114 

CLR Rl 

CLR R2 

CALL SETABL 

JSR PC, SETABL 

MOV 01600, R3 

hOV n5,aoi<PARl 

TST R2 

BMI 5i 

MOVB Rl. 3037777 

BR 4$ 

MOV Rl. 3057/76 

MOV 3057776, RO 

MOV R 1.305 7 7 76 

MOV 3057776.ro 

ADO 02000. R 5 

CMP R3.R5SL0T»2(SP) 

BLOS 2* 

COM Rl 

8MI 1$ 

rsT p.' 

BMI f>$ 

COM R.' 

BR 1$ 



[CL21-SETABL [CL3J -CPARTr 

lUrO 03/13/84 
;Preserve registers. 



(Get the address of the parity CSR table. 

(Get the address of the "write wrong parity" 

I table. 

jPass it to SPARTY for setup, set up PTtTBL 



iwith all error counts at -4. 

J Save current contents of the parity vecto- 

»Get the address of the local trap handler, 
iSet up the parity trap vector. 
jlnltial:/e the parity word, 
jinltiali/e the by t a/word addressing flag. 

Set all live CSRs for "write wrong parity". 

Set up the first PAR setting. 

Set up the working PAR. 

Write something into the PARs range. 



Read it bacW for possible bad parity. 
Wr i te good pari ty . 
Read bacW ^od parity. 

But.p the PAR setting by 32K words. 

5*e If the ran^ of memory has been covered. 

I f not I go do ' t aga I n . 

Set Rl for the opposite parity. 
Do both parities. 

If word and byte addressing done, get out. 
Set for word addressing. 
I OOP. 



b:5 

CVMSBBO v'^M QUICK VhRir^ MACRO Mli'OO 10 APR 84 07:55 PAGt: 23-1 

SEQ 0030 
TPART1 - tNABLt PARITY TRAPS AND TEST PARITY DETECT 

■^'^a 005350 6$! POP a#U4 iRestore the parity trap vector. 

003350 012637 000114 { lOV ( SP ) . , .^ftl 14 

^^9 005354 CAl.l CPARTY iCheck that error counts are now aU 2ero. 

005:S54 004 76 7 00043^ JSR PC, CPARTY 

1000 003 3bO RETURN 

003360 000.^07 RTS PC 



K 3 



CVMSBRO ^^M QUICK VBRIFl MACRO M1200 10- APR -64 07:135 PAGE 24 
TPART1 ENABLE PARITY TRAPS AND TEST PARITY DETECT 



SEQ 00?1 



100? 








100? 








1004 








1005 








1006 








100" 








looe 








1009 








1010 


003362 


004 756 




1011 








1012 


003564 


010400 




101? 








1014 


005366 


005710 




1015 


003370 


001005 




1016 








1017 


005372 


004767 


003466 


1018 


003376 








005576 


012605 






003400 


004767 


002040 


1019 








10^0 








1021 








1022 








1025 








1024 


005404 


005770 


000000 


1025 


003410 


100403 




1026 


003412 


062700 


000004 


102 7 


003416 


000763 




1028 








1029 








1030 


003420 


012730 


000001 


1031 


003424 


005210 




1032 


003426 


010026 




1033 


003430 


010026 




1034 


003432 


00503 7 


177776 


1035 


003436 


000705 





7$; 



8$: 



9$: 



» » » 



iLocol parity trap handler. Traps with write wrong pority set may 
I result In wrong pority on the stack. This routine cleanti the stack, 
jresets the trapping CSR and Increments Its associated error count. 






JSR 


pc.acsp)*- 


MOV 


R**,R0 


TST 
BNE 


(RO) 
9J 


JSR 
CALL 
MOV 
JSR 


PC.TNOPTY 
EHHOR.CSP)* 
(SP)»,R5 
PC, ERROR 



10$! 



TST 


ao(Ro) 


BMI 


10$ 


ADO 


*4,R0 


BR 


8$ 


MOV 


>'i.b)t:RO)» 


INC 


.:?o> 


MOV 


RO.CSP). 


MOV 


RO,(SP)» 


CLR 


aopsw 


BR 


5$ 



tlocater for the local handler. 

iSet RO to address the parity CSR table. 

iCheck for end of table. 
J 

,If the program gets here there may be trouble 
tit means the parity CSR Is causing traps but 

; Is not setting the parity error bit. If 
i"wrlte wrong parity" Is still enabled for 
; the stack area, the error message .!tay ne^cr' 
;get displayed and the processor may halt, 

J See If the CSR caused the trap. 

I 

J If not, get to the next CSH address, 



ilf It did, reset the CSR 
jBump the error count . 
tClean up the stack. 

* 

(■^eset Priority ^cro, 

jGet back to the test. 



CVMSBIKI 


JM QUICK VERIFK 


TL16K 


TEST THE LOW 16K WORD 


10?; 








1058 








105^ 








1C40 








1041 








104.^ 








104? 








1044 








1045 








1046 








104 7 








1048 


005440 


000240 




1049 


003442 








003442 


004567 


002404 


1050 








1051 


003446 


005005 




1052 


003450 


012704 


000600 


1053 








1054 


003454 








003454 


004767 


000370 


1055 


003460 








003460 


004 767 


000440 


1056 








1057 


005464 








003464 


000207 





G?5 

MACRO M1200 10-APR-a4 07:55 PAGE 25 



SEQ 0032 



. SBTTL TL16K - Test the low 16K words of memory 
**************+*♦*♦♦ ♦*+*»****+^******# •♦♦♦♦♦*•♦♦»♦♦♦•*♦**♦ •*♦•♦**♦**♦♦♦♦*♦**♦* 
INPUTS: [III] Memory manaQcment Is set up end enabled. 



jOUTPUTS: [ADOl] 
CALLING SEQUENCE: 



The low 16K words of memory Is tested. 
CALL TL16K 



(SUBORDINATE ROUTINES CALLED: [CLll-CLRMEM ^CL2l TSTMEM 



Tl.i6K: 



NOP 

PRESERVE 

JSR 



CLR 
MOV 

CALL 
JSR 
CALL 
JSR 



R5.PREG05 

R5 
0600 . R4 

CLRMEM 
PC.CLRMEM 
TSTMEM 
PC.TSTMEM 



lUFD 03/13/84 
jPr^serve registers. 



iSet the low PAR setting to 0-4K. 
(Set the high PAR sett ng to 12-16K, 

iCIear the low 16K worcs . 

I Test the low 16K word?-. 



RETURN 
RTS PC 



CVMstUlO 


.■'H QUICK Vtf^I 


"i 


MACRO M12 


TRfcST 


TtSr THE REHAINOER OF 


MEMORY 


los-^ 










10^0 










1061 










106.^ 










10t>? 










lOM 










lOo^S 










1066 










106? 










1066 










1069 










loro 










1071 










107? 


005466 


000240 




T 


1073 


0034 70 










003470 


004567 


002356 




1074 










1075 


0054 74 


010504 






1076 


003476 


012705 


001000 




1077 










1078 


003502 










003502 


00476 7 


000504 




1079 










1080 


003506 










003506 


004767 


000336 




1081 










1082 


003512 










003512 


004 767 


000406 




1083 










1084 


003516 










003516 


004 767 


000532 




1085 










1086 


005522 
003522 


000207 







10 -APR 84 07:55 PAGE 26 



SBTTL TRFST - Test the remainder of memory 

*♦*♦♦* + ** + **++***♦♦♦♦*♦♦♦♦*♦♦♦♦♦♦♦♦♦*.*♦♦♦♦♦•♦♦»♦♦♦♦♦♦♦*♦♦♦♦♦♦♦♦♦♦**♦♦*♦♦**♦*** 

INPUTS: [lEl] The highest vdlid PAR setting. 

[Ill] Memory management Is set up and enabled (22 bits). 

OUTPUTS: [ADOl] • Memory above 16K words is tested, 

CALLING SEQUENCE: CALL TREST.PEl 

SUBORDINATE ROUTINES CALLED: [CLD-SETLOW [CL21-CLRMEM CCL3]-TSTMEM 

(CL41-SETBAK 



SEQ 003: 



TREST: nop 

PRESERVE 

JSR R5.PREG05 



MOV 
MOV 

CALL 
JSR 

CALL 
JSR 

CALL 
JSR 

CALL 
JSR 



R5,R4 
tflOOO.RS 

SETLOW 
PC.SETLOW 

CLRMEM 
PC.CLRMEM 

TSTMEM 
PC.TSTMEM 

SETBAK 
PC.SETBAK 



jUFD 03/13/84 
iPreserve registers. 



J Set -jp the high PAR setting. 
jSet up the low PAR setting. 

(Set up for operation In the low 16K words. 

;Clear all memory above IbK words. 

i Test all that memory . 

{Restore the program to Its old location. 



RETURN 
RTS PC 



1 :-; 



CVMSBHO .^H QUICK V^RlKi MACRO MU^OO 10-APR 64 Q?i5\'i PAGt 27 
BUMP RELOCATE THE PROGRAM UP UNTIL IT RESIDES IN 16K TO 20 



SEQ 0034 



1088 








108^> 








1090 








1091 








lO^^J 








109? 








1094 








109^ 








1096 








1097 








1098 








1099 








1100 








1101 


003524 


010700 




110^ 


003526 


042700 


01777-' 


1103 


003532 


010002 




1104 


003534 


010001 




1105 


003536 


012705 


010000 


1106 


003542 


005004 




1107 








1108 


003344 


062204 




1109 


003546 


077502 




1110 








1111 


003550 


012705 


010000 


111? 


003554 


012012 




1113 


003556 


005112 




1114 


003560 


005122 




1115 


003562 


077504 




1116 








1117 


003564 


012705 


010000 


1116 


003570 


005003 




1119 


003572 


062103 




uao 


003574 


077502 




1321 








112^ 


005576 


020304 




1123 


003600 


001405 




1124 


003602 


004767 


003236 


1125 


003606 








003606 


012605 






003610 


004767 


001630 


1126 








1127 


003614 


022707 


100000 


1128 


003620 


101415 




1129 


003622 


062707 


020000 


1150 


003626 


062706 


020000 


1131 


003632 


062716 


020000 


1132 


C03636 


0627t>6 


020000 000002 


1133 


005644 


062/66 


020000 000004 


1154 


003652 


000724 




113',. 








1136 


005654 








003654 


OOOi^OV 





SBTTL BUMP - Relocate the program up until It resides in 16K to 20!< 
INPUTS: [Oil] The current program location. 



OUTPUTS: 



[♦DOl] - The program is relocated !f not already nt 16K . 
[D02] - The 20K to 24K memory segment is tested (quick test) 



CALLING SEQUENCE: CALL BUMP 

COMMENTS: All registers ore corrupted by this routine, 

SU80RCINATE ROUTINES CALLKD: f tCLl 1 -ERROR . 



BUMP; 



15 



6* 



4$ 



5J 



6$ 



MOV PC.RO 

BIC 017777, RO 

MOV R0.R2 

MOV RO.Rl 

MOV 04096. ,R5 

CLR R4 

ADD (R2)».R4 

SOB R5.1$ 

MOV 04096. .R5 

MOV (RO)* ,(R2) 

COM (R2) 

COM (R2)* 

SOB R5,3i 

MOV 04096. ,R5 

CLR R3 

ADD (R1)».R3 

SOB R5,4$ 

CMP R3.R4 

BEQ 5i 

JSR PC.TL0W32 

CALL ERROR. (SP)» 

MOV (SP)».R5 

JSR PC. ERROR 

CMP 0100000, PC 

BLOS t% 

ADD 020000. PC 

ADO 0:"'0000,SP 

ADD OJOOOO.CSP) 

ADD 020000,2(SP) 

ADO 020000, 4(SP) 

BR BUMP 

RE TURN 

RT5 PC 



jEstabllsh the cu^^rent program location. 



Set a 4I< counter. 
(Initial Ize the program checksum. 

^Calculate the program checksum. 



I Set a 4I< counter. 

;Copy the program to the next 4I< segemnt , 

iQuick-test all locations. 
1 

(Set a 4K counter. 

J In i 1 1 al i 7C the copy check sum. 

(Calculate the copy checksum. 



I Compare the copy checksum to the program 

(Checksum. 

iIF they aren't the same, signal an error. 



; See i >' the program Is high enough. 

ilf not. jump to the copy In the ne^t 4K , 
tAd4ust the stack po'nter to the current area. 
(Adjust all the returns. 
I 

I Bump again. 



J 5 



CVMSRBO ?.tA UUICK VERIFI 



SPART> 

11??5 

1140 
1141 
114^ 
114? 
1144 
114S 
114b 
114 7 
1148 
1149 
IISO 
llbl 

1153 

11S4 
1155 
11^16 
1157 
1158 
115*^ 
1160 
1161 

1162 
llo5 
1164 
1165 
1166 
1167 
1168 
1169 
1170 
1171 
117a 
1173 
1 1 74 
1175 
1176 
1177 
1178 

1W9 
1180 
1181 

lis? 

1183 



1184 
1185 

118*. 
118/ 
1188 



INITIALIZE THE PARITY 



003656 
003660 
003660 

003664 
003670 

00367.? 
003676 

00370c' 
003702 
003706 
003712 

003716 
003722 

003724 
005730 
003732 
003734 

003740 
003/44 
003 750 
003752 

003 754 
003754 

003 760 
003 76? 
003 764 

005770 
005770 
003 772 

003 /7h 
003776 



000240 

004567 

012704 
010403 

012702 
012701 



013746 
004 767 
012637 

012712 
001006 

012725 
010225 
010224 
012724 

062702 
005065 
005014 
077117 



MACRO M1200 10-APR~84 07;55 PAGE 28 

CSR TABLE AND SET UP WRNGPA 

.SBTTL SPARTY - Initialize the parity CSR table ano set up WRNGPA 

INPUTS: [lEl] Address of WRNGPA. 
[0111 - Address of PTYTBL. 



SEQ 0035 



002166 
001000 



172100 
000020 



000004 
000066 
000004 

000000 



000005 



177774 

000002 
000002 



012657 000004 

020405 
001005 
004767 003074 

012605 

004 767 001446 



000207 



I OUTPUTS: 



[001] - PTYTBL is set up with the addresses of all "live" 
parity CSRs and -4 for nil error counts. 

[D02] - WRNGPA is s<»t up with a "write wronfi parity" command 
for each "live" parity CSR. 



CALLING SEQUENCE; 



CALL 



SPARTY, IE: 



SUBORDINATE ROUTINES CALLED: [>CLl]EnROR 

lUro 03/13/84 
lPr*serv« reflisters. 

iGet the address of PTYTBL. 
1 

?Set up ;:he address of the parity CSRs. 
J Set up to checi< for all CSRs. 

;Save the cirrent time-out handler. 

iGet the address of the local time-out handler. 
I Set jp the 1 1 meout vector . 

iTest for a CSR. 

I If the CSR e^Ists, make entr' s In WRNGPA. 
;Make entries In PTYTBL. 

jBump to the neKt CSR address. 

{Ensure a ;ero word at the end of each table. 

> 

ji-'jt all 16 possible CSR addresses. 

;Restore the time-out vector. 

; See if any CSRs were alive. 

( 

> 

;If not. signal an error. 



004000 004756 



SPARTY: 


NOP 

PRESERVE 

JSR R5,PREG05 




MOV 
MOV 


<>PTYTBL.R4 
R4,R3 




MOV 
MOV 


dl72100.R2 
<?16. .Rl 




PUSH 
MOV 
JSR 
MOV 


S<>TIMOUT 
aOTIMOUT, -(SP) 
PC. 4$ 
(SP)*,aOTIM0UT 


1$: 


MOV 
BNE 


*0,(R2) 
2$ 




MOV 
MOV 
MOV 
MOV 


*5.(R5>. 
R2,CR5it 
R2.CR4)* 
V?-4,(R4)* 


2$: 


ADD 
CLR 
CLR 
SOB 


«r.R2 

2CR5) 

(R4) 

Rl.U 




POP 
MOV 


a^>MM0UT 
C^PV.awTIMOUT 




CMP 

BNE 

JSR 

CALL 

MOV 

JSR 


M4.R5 

fC. TNUPTV 
FRROR.tSP)* 
^'SP)» ,R5 
PC, ERROR 


5$: 


R[ TURN 


PC 


4$: 


JSR 


PC.a(SP)'' 



tLocal timeout handler locater. 



1/ "^ 

CVHSBIK"^ M QUICK VHRIF^ MACRO m^OO iOAPR-a4 07:55 PAGE c?8-l 

SPART> - INITTALI/E VHt PARITY CSR TABLK AND SET UF WRNGPA ^^^ ^^^^ 

1189 

ll'"»0 00400c' OA^^bb 000004 00000^ QIC ^M,2CbP) iClear the / bit In the CbR, 

li91 0040L0 000002 RTI ;RsturA from trap. 



L3 



CVHSRBO .^M QUICK VF.Rirt MACRO M1200 lO-APR-84 07:55 PAGE 29 
CPARTY - CHECK KOR ANY PARITY ERRORS 



SEQ 0037 



119? 
11^4 
1195 
119n 
1197 
1198 
1199 
1200 
1201 
1202 
1203 
1204 
1205 

1206 
1207 
1208 
1209 
1210 
1211 
1212 
1215 
1214 



1215 

1216 
1217 



004012 
004014 
004014 



004024 
004026 

004030 

004032 
004034 
004034 
004040 
004044 

004046 
004046 



000240 

00456 7 002032 



004020 012700 001000 



005720 

001407 

005720 
001774 

01600S 177774 
004 767 000726 
000767 



000207 



.SOTTL. CPARTY - Check for any pority errors 
INPUTS: I oil] The address of PTYTBL. 
OUTPUTS: [♦ADOll - Error message to the console. 
CALLING SEQUENCE: CALL CPARTY 
SUBORDINATE ROUTINES CALLED: [ ♦CLl ] -PTYERR 

lUFO 03/13/84 
[Preserve registers. 

jGet the address of PTYTBL. 
i Check for end of table. 

i 

; Check the error count. 

ilf error, signal wh th CSR detected the error. 



CPARTY! 


NOP 

PRESERVE 

JSR R5.PREG05 




MOV 


V^PTYTBL.RO 


1$: 


TST 
BEC 


(RO)^ 
2$ 




TST 

BEQ 

CALL 

MOV 

JSR 

BR 


(RO)* 

1$ 

FTYERR. -4(R0) 

-4CR0).R5 

PC, PTYERR 

IJ 


2«: 


RETURN 

RTS 


PC 



KA P 



CVMSBBO .'M QUrCK VFRir> MACRO M1200 10-APR-e4 07;55 
CLRMEM - CLEAR ALL SELECTED MEMORY 



PAGE 30 



SEQ 0038 



l'^^o 

1221 
122? 
1223 
1224 
1225 
1226 
122 7 
1228 
1229 
1230 
1231 
1232 
1233 

1234 
1235 
1236 
1237 
1238 
1239 
1240 
1241 
1242 

1243 
1244 

1245 
1246 

1247 
1248 
1249 
1250 
1251 
1252 



004050 
004052 
004052 

004056 
004060 

004062 
004066 

004072 
004076 
004076 

004102 
004104 
004106 
004106 

004112 
004116 
004120 

004122 
004122 



000240 

004567 

010501 
010402 

012705 
012704 

010137 

004767 

005700 
001402 

004767 

062701 
020102 
101764 

000207 



001774 



020000 
010000 

172342 

000266 



001154 
000200 



.SBTTL CLRMEM - Clear all selected memory 

INPUTS: flEl] The low PAR setting to be used. 
[IE2] The high PAR setting to be used. 
[Ill] - Memory Management is set up and enabled (22 bits). 

OUTPUTS: [ADOl] - All selected memory is set to all zeroes. 

CALLING SEQUENCE: CALL CLRMEM, lEl , IE2 

SUBORDINATE ROUTINES CALLED: [CL1]^CLEAR [ ♦CL2] -SEGERR 

:UFD 03/13/84 
;Preserve registers. 

;Move lEl to a safe register, 

jAnd IE2. 

;Set up PEl for CLEAR. 
:And PE2. 

J Set up the working PAR. 

J Clear the 4096 word segment. 



CLRMEM: 


NOP 

PRESERVE 

JSR R5.PREG05 




MOV 
MOV 


R5.R1 
R4,R2 




MOV 
MOV 


#20000. R5 
#4096 . . R4 


1$: 


MOV 

CALL 

JSR 


Rl.a#l<PARl 

CLEAR 

PC .CLEAR 




TST 
BEQ 
CALL 
JSR 


RO 

2$ 

SEGERR 

PC.SEGERR 


2$: 


ADD 
CMP 
BLOS 


#200. Rl 

R1.R2 

15 




RETURN 
RTS 


PC 



Check the returnea Lest flog. 

If error, signal an error in the segment. 



jBump the PAR setting. 

J See If all selected memory Is cleared. 

;If not. do the next segment. 



M < 



N^ 



:) 



CVMSBBO 0-.7M QUICK VF.RIFt MACRO N1200 lO-APR-84 07;55 PAGE 31 
TSTMEM - TEST ALL SELECTED MEHORY 



SEO 0039 



l.?54 

1256 

1257 
1258 
1259 
1260 
1261 
1262 
1265 
1264 
1265 
1266 
1267 



1269 

1270 
1271 
12 72 
1273 
1274 
1275 
1276 

1277 
1378 
1279 
1280 

1281 
1282 

1285 
1284 
1285 
1286 

1287 
1288 
1289 
1H90 



004124 
004126 
004126 

004132 
004136 
004140 

004144 
004146 
004152 
004152 

00.156 
004160 
004162 
004162 
004166 
004172 
004172 

004176 
004200 
004202 
004202 

004206 

00^210 

oo4.'eio 



000240 
004567 

012703 
005002 
012700 

006305 
012701 

004767 

005102 
005001 

004 767 
012701 



004 767 
077022 

000207 



001720 
000001 
000014 

010000 
000250 



000240 
010000 



004767 000230 

005102 
005001 



000220 



.S8TTL TSTMEM - Test all selected memory 

INPUTS: [lEl] The low PAR sc*:tino. 
[IE2] - The high PAR setting. 
nil] - Memory Management Is set up and enabled (22 bits). 

OUTPUTS: [ADOll - All memory selected by lEl and IE2 is tested. 

CALLING SEQUENCE : CALL TSTMEM . lEl . IE2 

SUBORDINATE ROUTINES CALLED: f V^CLl] -INVMEM 



TSTMEM: NOP 

PRESERVE 

JSR R5,PREG05 



IS 



MOV 


^1,R3 


CuR 


r^2 


MOV 


/?12. ,R0 


ASL 


R3 


MOV 


^4096. ,R1 


CALL 


INVMEM 


JSR 


PC , INVMEM 


COM 


R2 


CLR 


Rl 


CALL 


INVMEM 


JSR 


PC. INVMEM 


MOV 


*4096. .ri 


CALL 


INVMEM 


JSR 


PC. INVMEM 


COM 


R2 


CLR 


Rl 


CALL 


INVMEM 


JSR 


PC. INVMEM 


SOB 


R0.1$ 


RtTURN 




RTS 


PC 



lUFD 03/13/84 

; Preserve reg i sters . 



^Initialize PE3, tha address increment bit. 
(Initialise the pos/neg flag. PE4. 
jinitialize the bit shift count. 

(Shift the address increment bit. 

(Inverting from zeroes to ones. 

(Invert all memory, positive address pattern. 



(Shift to a negative addressing pattern. 

(Inverting from ones to zeroes. 

(Invert all memory, negative address pattern. 

(Inverting from zeroes to ones. 

[Invert all memory, negative address pattern. 



J S^ .' t back to a pos i 1 1 ve addressing pattern . 

(Inverting from ones to .'eroes. 

ilf.,*rt all memory, positive address pnttern. 



J lest all 12 addressing patterns. 



B4 



CVMSBBO OM QUICK VtRU 1 
SETIOU RELOCATE AND REMAP FOR 



1500 

1501 
1300 
1 50? 
1504 
1505 
1306 
130? 



150ft 
1309 
1310 
1511 

1510 
1313 
1514 



15ib 
1516 
1517 

i5ie 



004010 
004014 
004014 



004206 
004006 

004050 
004056 
004056 
004040 



004 767 000306 

004 767 002054 

010605 

004 767 000100 



0040!iO 
004050 



MACRO MIOOO lO-APR-84 07 '55 PAGC 5? 

OPERATION IN THE LOW 16K WORDS 

.SBTTl SETLOW R«locat« and r#map for optration !n the Ion 16K words 

INPUTS! [DIl] TKMAPO, the address of the PAR map for low 16i< 

operation. 



SEQ 0040 



000040 

00456 7 001650 
004000 010757 000000 170540 



004044 01076/ 000001 001644 



OUTPUTS; 



[oon 

[ADOn 



RELFLG la set. 
The program is relocated to the low 16f< words o^ 
memory and the KT Is remapped for operotlon there. 



CALLING SEQUENCE: 



CALL 



SKTLOW 



SUBORDINATE ROUTINES CALLED: fCLl]-RLCATE [CLO] SETABt 

lUFO 05/15/84 
iPreserve registers. 

iFnsure PAR 1 Is properly set. 

iRelocate the program In physical memory. 

lOet the address of TKMAPO. 
iPasQ It to SETABL. 



000207 



SETLOW: NOP 

PRESERVE 

JSR R5,PRE'J05 


MOV 


<>PAROK,QOI<PARl 


CALL 

JSR 


RLCATE 
PC, RLCATE 


JSR 
CALL 

MOV 
JSR 


PC, TKMAPO 
SETABL.(SP)» 
(SP>mR^ 
PC. SETABL 


MOV 


Ol.RLLrLG 


WE TURN 
RT^ 


PC 



iSet the relocation flog. 



CA 



StTBAK 

15.V 

15.75 
15.M 
1 5."S 
I5.^t> 

15.^ ' 
1-V6 

1550 
1551 
155.^ 
1555 
1554 
1555 
1556 
133; 

1336 
1339 
1340 
1341 
1342 
1343 



1544 
1545 
1346 
1347 
1348 
1349 

1550 
1351 
1352 
1353 
1554 
1355 
1356 
1357 
1558 
1359 
1360 
1561 
1 56,^ 
1363 



.'M maCK VlRUi macho MIJOO lO APR a4 07:55 PAUt 33 

RfclOCAIt HACK TO ORIlJiNAl PHISICAl MKMORY AND Rt^SH 



SFQ 0041 



004254 000240 

004256 

004256 004567 001570 



004262 052767 
004270 001414 



077777 001626 



004272 004 76/ 002070 

004276 

004276 C12605 

004300 004 767 000042 

004304 012737 OOIOOO 172342 

004312 005067 001600 

004316 

004316 004767 000236 

004322 000005 

004324 056706 001566 

004330 005000 

004 552 000240 

004334 07 7002 

004356 000240 

004340 7 7002 

004 542 000240 

004 544 

004544 000207 



, SBTTl SETBAK Relocot* back to orlginol phy«lcol memory and Reset 

INPUTS! toil] RELFLG. 

(0I21 ■ TKMAP4, the address of the PDR mop For all APRs set to 
Read/Write. 



OUTPUTS: 



roil] 
[Don 

[ADOl] 



The pro';eo«or Is In a Reset state. 
RF.LFLG Is clearec;. 

The program resides In the 16K to 20K physical 

memory area. 



CALLING SFQUENCh 



CALL 



SETBAK 



SieORDINATE ROUTINES CALLED: [ •CLl ] ■ SETABl [♦CL2] RlCATE 



SETBAK: NOP 

PRESERVE 
JSR 



1$ 

2J 
31 



BIT 
BEQ 

JSR 

CALL 

MOV 

JSP 

MOV 

Cl.V 

CALL 
JSR 

RESET 

BIS 

CLR 
NOP 
SOB 

NOP 
SOB 

NOP 

Rf TURN 
RTS 



R5.PREG05 

077777, RELFIG 
1$ 

PC.TKMAP4 
SETABL. (SP)» 
CSP)»,R5 
PC. SETABL 



lUFO 05/13/84 
iPreserve registers. 



1 See if a relocation Is needed. 
\ 

(Get the ac *ess of TKMAP4. 
I Pass It to SETABL . 



OPAR16K,SOKPAR1 (Ensure that PAR 1 Is properly set. 



RELFLG 

RLCATE 
PC, RLCATE 



REl FLG.^P 

RO 

R0.2$ 

R0.5J 
PC 



(Reset RLLFU,, 

(Relocate bacW to original physical memory. 

(Fl\ the stacU pointer. 

(Oo a timer to allow the Reset to settle. 



[L* 05-U'''«4 
[L*0 05/l.''»4 
(UFO 05/l2'a4 



[)4 



CVMSBIUI .'M UUtCK \\:HU> MACRO MK>00 10 APR 84 0/J5S PAGE 34 

SETABl. SET LOCATIONS TROM A DATA -ADDRESS TABLE 



'•jEQ 004? 



i?:o 
13:? 

1574 

1?:^ 

15 't> 

i?"a 
1 ? ;n 

1580 
1581 
156c^ 
1505 
1384 
1385 
1386 
138"' 
1388 
1389 
1390 
1391 

1592 
1393 
1394 
13^5 
13% 
139V 
1598 
1399 
1400 
1401 



004346 
004350 
004350 

004 3S4 

004356 
00A360 

004 36.? 
004 364 

004 366 
004366 



000 MO 

00:^ ' . V 
Ol^SO'i 

OOytiOf^ 

oor ■■■'. 

000.. 07 



.14 76 



SRTTL SETABl Set locations from a Data-Address table 
INPUTS: [lEl] The addresa of the tabic to be used. 



** 



OUTPUTS: 



COOi] 



The locations addressed by the table are set up with 
data fron the table. 



CALLING SEQUENCE: 
COMMENTS: 



CALL 



SETABL, Itl 



The table sequence is: 

End 



Start 





Address Slot 
Data Slot 



Add.^ess Slot 
Data Slot 
Address Slot 
Data Slot 



SueORDINATE ROUTINES CALLED: None. 

( .."D 05/15/84 

(Preserve reQisters. 

iGet the data, 

(Check for end of table. 
I 

(If not the end, put the data In the location, 
(Continue until end of table. 



SETABL: 


NOP 

PRESERVE 

JSR R5.PRFG05 


U: 


MOV 


CRS).,R4 




TST 
BEQ 


(R5) 




MOV 
BR 


R4,a(R5)* 


a$: 


RETURN 
RTS 


PC 



E4 



CVMSBBO .'M QUICK VtRIK> MACRO Mi?00 lO-APR-84 07:55 PAGE 35 
CLEAR - CLEAR A SEGMENT Of MEMORt 



SEQ 004 5 



1405 
1404 
1401. 
1406 
140"/ 
140.H 
140^ 
1410 
1411 
141.^ 
l'^15 
1414 
1415 
l-llb 
141:* 
1418 
1419 
14-'^0 
1421 
1A?2 

1425 
14^-!| 
1425 
1426 
1427 
1428 
14?9 
14 30 
1451 
143;? 
1433 
1434 
1433 
1436 
1437 
1438 



004170 000240 

004^.72 

001372 004567 001454 

0043 76 0050CC 

004^,00 1 1 00 ir^ 

OO4402 105115 

004404 105 If. 

004406 1^2515 

004410 :a)5ii5 

004412 105115 

004414 112500 

0044 ir> 0?7410 

004-120 

004 A20 t' 10066 000002 

004424 000207 



.SBTTL CLEAR - Clear a seQment of memory 

J INPUTS: [lED Th« starting adlress of the segment to be cleared. 
; riE2l The segment si^e in words. 



!oUTPUTS: 



1 



[DOD The segment of nemory is cleared. 

[OEll 2ero If no errors are detected, non-/ero if any errors 
are detected. 



(CALLING SEQUENCE: 

; 

J COMMENTS: 



CALL 



CLEAR IE1,IE2 



The selected memory segment is cycled bacl< and forth between 
; all ones and all zeros Cto warm it up). This is done v^ith 

i byte addressing. 

i SUBORDINATE ROUTINES CALLED: None. 

lUrO 05/13/84 
jPreserve registers. 

1 In! t ial Ize a ;ero. 

(Set the lot- byte to zero, 

I Complement 1 1 . 

I Set It back to ^ero. 

iClear the high byte. 

(Complement I t . 

I Set It bock to zero. 

jPut It In RO for transfer to the next byte. 

jDo the complete segment . 

jReturn the error flag lOEl], 



CLEAR: 


NOP 

PRESERVE 

JSR R5,PREG05 




CLR 


RO 


IS: 


MOVB 
COMB 
COMB 


R0.CR5) 

(R5) 

(R5) 




MOVB 
COMB 
COMB 


(R5)»,(R5) 

(R5) 

CR5) 




MOVB 


CR5)*.R0 




SOB 


R4.1S 




RETLWN 

hOV 

RTS 


RO 

RO.ROSLOTCSP) 

PC 



F4 



CVMSBBO JM QUICK V[-R1K1 MACRO M1?00 lO-APR-a4 07:55 PAGE. 36 
INVMEM - INVERT ALL StLtXTtO MEMORY 



SEQ 0044 



1440 
3441 
144c' 
?44? 
1444 
144ri 
144t.. 
144; 
1448 
144^ 
1450 
14'.n 
145.^ 
1mS5 
1454 
1455 
1456 
l-'^5'/ 
1458 
1459 
1460 
14'Sl 

1463 
146? 
1464 
1465 
14t.6 
1467 



146H 

1469 
1470 
1471 
147,? 



14?3 
14 74 
14/5 
14 76 
1477 
14 78 
]479 
1480 



1481 
I48i? 
I4fi? 

14H4 
x465 
1486 
I4ij7 



00A%26 

r.044 50 

o->i4:.o 

0044:54 
0044 36 

004440 
00^i4^,'^ 
004444 
004144 
0O4446 
00445? 
C0445h 
004^*60 
00446:-^ 
0044.-4 
004464 
OO^-^bO- 
0044 /c- 
004^ 7^:, 



00450;^ 
004506 
0045 Li 
004 5^. J- 
004514 

00-15.^0 
00451^4 
0015P4 

004530 
00^53.' 
004:>b4 
004034 



OOOPAO 

00^^6 7 
005/0? 
0010 10 

010501 

croio? 

C10305 
004/0/ 
C."l?('03 

oot)4i : 

OU'401 
01050? 

01?70- 
OOOCOl 



C04500 0<.;;50l 



.SBTTL INVMEM - Invert all selected memory 

INPUTS: [ZED The low PAR setting to be used. 
[IE2] - The high PAR setting to be used. 
riE3] - The address increment bit. 
[IE4] - Zero for positive addressing, non-zero for negative 

addressing. 
riE5] - Zero if inverting from ones to zeroes. 4096 If 

Inverting from zeros to ones. 
rilll - Memory Management Is set up an enabled (22 b'ts). 



OUTPUTS: 



[ADOll - All selected memory is Inverted and checked for 

errors. 
[*AD021- Error messages are displayed on the console terminal. 



CALLING SEQUENCE: CALL 
SUBORDINATE ROUTINES CALLED: 



INVMEM, IEUIE2,IE3.IE4 



001416 



[♦CL1]-SPLADR [*CL2] -SMIAOR [CL31 -SETABL 
[«CL4MNVERT [CL5] -SETABL f *CL6 } -SEGEPR 

tUFO 03/13/84 
(Preserve registers. 

jCheck the pos/neg flag. 
I 

;If positive, set lEl as the working setting, 
(Set IE2 as the terminal PAR setting 
(Set up a positive addressing pattern. 



000424 
000200 



000460 
177600 



000004 
00162i? 



01«5604 
0047i>7 

CO'V/f ; 
oicr-; ■' 
004 ?^« / 

004 Vq; 000526 



17 7626 
17234? 
000500 



INVMEM: NOP 




PRESERV 


E 


JSR 


R5.PREG05 


TST 


R2 


BNE 


1$ 


MOV 


R5.R1 


MOV 


R4.R2 


CALL 


SPLADR,R3 


MOV 


R3.R5 


JSR 


PC.SPLADR 


MOV 


<^200.R3 


BR 


3$ 


1 J : MOV 


R4,R1 


MOV 


R5.R2 


CALL 


SMIADR,R3 


MOV 


R3,R5 


JSR 


PC.SMIAOR 


MOV 


V>-200.R3 


BR 


3J 


2J: ADD 


R3,R1 


3$; MOV 


RISL0T(SP),R4 


JSR 


PC,TKMAP5 


CALL 


SeTABL.(^^)» 


MOV 


(SP)*,R5 


JSR 


PC, SETABL 


MOV 


Rl,a#l<PARl 


CALL 


INVERT 


JSR 


PC, INVERT 


ADO 


R4.R0 


BtU 


4$ 


CAl L 


SEGhRR 


JSR 


PC.SEGtRR 



(If negative, set IE? as the working setting. 
(Set IFl as the terminal PAR setting. 
(Set up a negative addressing pattern. 



(Update the PAR setting. 

(Get the ones/zeroes flag. 

(Get the address of the PQR Read-Only table. 

(Set PDRs 2 through 6 for Read/Only, 



(Set up the working PAH. 
(Invert a 4K word r.egment , 



(Check for error*; . 

( 

;lf error, signal on error In the segment. 



CVMSBBO 0-c?M QUICK VtK'irv MACRO Ml^OO 

INVMEM - INVERT ALL .SrLECTED MEMORY 



1488 

1489 004540 O^'OIO." 

1490 00454-^ 0Ol?;Sf. 
1491 

1492 004544 004 7C,- 

1495 004550 

004550 0] SO ^ 
0045^."? 004 /A V 

1494 004556 

004556 000^07 



001616 
177570 



4$! 



10-APR-a4 07J55 PAGE 36-1 



CMP 
BNE 

JSR 

CALL 

MOV 

JSR 

RETURN 

RTS 



Rl.R? 

PC,TI<MAP4 
SETABL.(SP)* 
(SP)».R5 
PC.SETABL 

PC 



iChecU done. 



J Get the address of the Read/Write PDR map. 
J Set all PDRq for Reod/Write. 



CVMSRBO JM QUICK VJPC -. 
RLCATP. - RELOCATE THE PROGRAM 



1496 

1498 
i499 
1500 
IbOl 
150^ 
1505 
1504 
1505 
1506 
150^ 
1508 
1509 



: ;4 

MACRO Mh^OO 10 -APR 84 07:55 PPiit 37 



1510 
1511 
1512 
1513 
1514 
1515 
1516 
15)7 
151H 
1519 
1520 
1521 
152? 
1523 
1524 
1525 
1526 
152' 
1526 
1529 
153C 
1531 
153? 
1533 
153^ 
1535 
1536 



1537 
1538 



004 5 'SO 
004562 
004562 
004566 
00457? 
0.M576 

004600 
004602 
004604 

0046^6 
0046:^ 
004616 

004 #^. 2 2 
004624 

00^626 
004652 
004636 

204640 
004642 
004644 

004646 
004650 
004652 
004656 
004656 
004660 

0^4664 
004664 



000."10 

00^56/ 
0?270O 

oi:'-o: 

005005 

ct>cO;;5 

00550!^ 
07710^ 

012 ?00 
012701 
012702 

01u021 
077c'0:> 

012.00 
01270! 
005004 

062U04 
005504 
07/103 

0.-0405 
001405 
004 767 

0\26J5 
004 767 



000207 



001264 
100000 
O3C000 



100000 
Ot'OOOO 
030000 



020000 
030000 



002166 



000560 



SEQ 0046 



. SBTTL RLCATE - Relccote th« progrom 
INPUTS: K'.-..ne. 



OUTPUTS: 



[DOIJ ■ A copy of the contents of memory from 100000 to 157776 
is made in memory from 20000 to 77776 



CALLING SEQUENCE: 



CALL 



RLCATE 



SUBORDINATE ROUTINES CALLED: [iCLlJ-ERROR 

lUTD 03/13/84 
iPreserve registers. 

;S^t the base address for the first checksum. 
J Set the rtord count, 
itnitlall/e the first checksum. 

; Generate the f I rst checksum. 
;Add the carry bit back in. 



iSet the base address for the move. 
; Set word count . 

(Move the block . 

I 

J Set the base address for the second checksum. 

I Set word count . 

J In 1 1 i al i^e the socond checksum. 

jGenerate the second checksum. 
i Atid the carry bit back In. 
I 

Check the checksums. 

If not a match, signal a bad relocation. 



RLCATE: 


NOP 

PRESERVF. 

JSR R5,PREG05 

MOV *100000.PC 

MOV ^12288. .;^j 

CLR R5 


1$: 


ADD 
ADC 
SOB 


(R0:)*.P5 

R5 

Rl.l* 




MOV 
MOV 
MOV 


^100000. RO 
«20000,R1 
^12288. ,R2 


2$: 


MOV 
SOB 


(R0)*,(R1)* 
R2.2$ 




MOV 
MOV 
CLR 


*20000,R0 
^12288. .Rl 
R4 


3«: 


ADO 
ADC 
SOB 


(R0)».R4 

R4 

Rl,3$ 




CMP 

BEQ 

JSR 

CALL 

MOV 

JSP 


R4,R5 
4$ 

PC,TL0W32 
ERROR. CSP)* 
(SP)»,R5 
PC.fRROR 


4S: 


RLTURN 
RIS 


PC 



14 



CVMS3R0 


.'ri QUICK V(-iU 


ri 


UNXtRR 


SIGNAL 


AN UNHXPECTED 


1540 








K-41 








i^^i 








1 f^4 /■ 








l':>44 








154?. 








J '14 c. 








154; 








154 y 








154^ 








1550 








1551 








].55.^ 








1555 


004666 


OOOiMO 




1554 


0046 70 








00A6/0 


004 5(:? 


001156 


15b^ 








1536 


0O467J 


004 7. S' 


oo;^?46 


1557 


004 700 








004 700 


OUT^O:* 






00470;? 


004 76 7 


0005 56 


155a 








1559 


001^06 








004706 


012 70.- 


00 >.*-04 




00471? 


004 767 


O'J'^^tib 


1560 








1561 


004 71.6 








004 716 


0!6oOS 


• .i\:c}A 




004 7^:^^ 


01^704 


0',)0'',b0 




00-1 r^e 


01? '0?; 


;)OOOio 




C04 7T>r? 


004 It V 


000 7 0^ 


l5o:' 








1565 


(M4 73'^, 


005 7 f.' 


001156 


15f>'i 


004 74? 


0014 0:» 




l':'''.S 


004 744 


0i,-'7^7 


00003? 


] 566 


004 75P 








004 75c^ 


004 7f, 7 


17j310 


15o7 


004 756 






1569 


004 r^h 


004 .'^ / 


00 r' 1 76 


1560 


004 76 ; 








004 76^ 


oi.\-.o. 






004 764 


004V.S7 


000544 


1570 








15VI 


004 770 








004770 


ooo^o7 





MACRO M1200 lO-APR-84 07:55 PAGE 38 



.SBTTL UNXERn - Signol an unexpected interrupt or trap 
INPUTS: [lED The address of the vector that trapped 



001104 



OUTPUTS: 



[AOOll - Unexpected trap error messages ore displayed on the 
console . 



CALLING SEQUENCE: CALL 
SUBORDINATE ROUTINES CALLED: 



UNXERR.IEl 



rCL2l-WRITE 



[CL5]-WRIUSN 



[CLlj-ERROR 
[CL41-WRITPG 

jUFO 05/13/84 
(Preserve registers. 

iGet the address of the error message table. 
iSignal the error and wait for Control E. 



iDisplay "this is the trapping vector". 
),fl'0,#8. ;Display the trapping vector. 



UNXERR: NOP 




PRESERVE 


JSR 


R5.PREG05 


JSR 


PC.TUNXER 


CALL 


ERROR. CSP)* 


MOV 


(SP)*.R5 


JSR 


PC, ERROR 


CALL 


WRITE. <>ETVCTR 


MOV 


#ETVC^M.R5 


JSR 


PC. WRITE 


CALL 


WRIUSN.RSSLOT 


MOV 


R5SLC)TCSP),R5 


MOV 


^•^ R4 


MOV 


^3 


JSR 


,■: luSN 


TST 


v'. '^ jN 


BEQ 




MOV 


^-^i^.SOUKOCHR 


CALL 


CTRLX 


JSR 


PC.CTRLX 


1*.; 




JSR 


PC.TGCTU 


CALL 


WRITPG.f SP)f 


MOV 


(SP)..R5 


JSR 


PC.WRITPG 


RETURN 




RTb 


PC 



I ARE WE IN UfD F- . S . MODE? 
;BR IF NOT 
jM4KE LiKt f/ TYPED 
iLET'S GET OUT 



[Uf"D 03/08/84 

;UfD 03/08/84 

;UFD 03/08/84 

tVfO 03/08 ''84 

jUro 03/08/64 



jU>9play "continuing with the test" 



SEQ 004 7 



PT^eRR - SIGNAL * 'r^-xniyi otrtcr 



IS 74 

IS/S 
1581 

158:: 

1585 
1534 
1595 
1586 
1567 



MACRO M1200 
ERROR 



.J4 
lO-APR-84 07:55 PAGfc 59 



1588 
1589 
1590 



1501 
159^ 



1593 
1594 



1595 
1596 
1597 
15^8 
1599 

1600 
1601 
160c? 



1605 
1604 



004 7/;? 
0C4 7:M 
0047 74 

00500'; 
005^^0-^ 
C 050C 4 

00^ :^06 

0050'-' 
00501 . 
C05016 

C050^':.> 

OO503? 
0050?6 
0^^5052 
005036 

005042 
005046 
005050 
005056 
005056 
005062 
005062 
005066 
005uo6 
005070 

005074 
005074 



OOOcMO 

004567 001.05.? 
004767 G0;^170 
Olc.wob 

004767 ooi'■yy^ 



Oi;?705 (:0;x-]0 
004767 000562 



^16605 

0^2704 

■J?/0? 

O-'-'i ''* / 

0C'7';7 

^"01405 
X. 1^757 

004 767 

004 767 

012605 
004767 

000207 



OCJOV/J 

oo,?o;o 
oc )">?■:, 

000032 
175204 
002072 

000440 



001104 



.SBTTL PTYFRR Signal o parity detect error 

INPUTS: [lEl] The address of the parity CSR associated with the 

error. 



I 



OUTPUTS: [ADOl] - Parity error messages are displayed on the console. 

CALLING SEQUt-NCE: CALL PTYERR.IEl 

SUBORDINATE ROUTINES CALLED: [CL13-ERR0R [CL2]-WRITE CCL3]-WRIUSN 

[CL41-WRITPG 

jUFD 03/13/84 

; Preserve reg I sters . 

;Get the address oT the error message table. 
J Signal the error ond wait for Control E, 



PTYERR: NOP 




PRESERVE 


JSR 


R5.PREG05 


JSR 


PC.TPARER 


CALL 


ERROR. CSP)» 


MOV 


CSP)>,R5 


JSR 


PC. ERROR 


CALL 


WRITE. OEPACSR 


MOV 


*EPACSR,R5 


JSR 


PC. WRITE 


CAuL 


WMUSN,R5SL0T 


liOV 


R5SL0T(SP).R5 


MCV 


V)' 0.R4 


MOV 


^f\. ,R3 


JSR 


PC.WRIUSN 


TST 


ir-DCHN 


BEQ 


1$ 


MOV 


<?32.o)flU UCHR 


CALL 


CTRLX 


JSR 


PC.CTRLX 


1$: 




JSR 


PC. TuCTU 


CALL 


WRITPG.CSP)* 


MOV 


(SP)4 ,R5 


JSR 


PC.WRITPU 


RETURN 




RTS 


PC 



iOIsplay "this Is the parity CSR". 
),^'0,<>8. ;Display the CSR addres*!. 



;ARe: WF IN UFD K.S. MODE? 
iOR IF NOT 
J MAKE LUsE U TYPED 
;LLT' S GET OUT 



:urp 05.\:':w'8'* 



:Uf 03/03/84 
* 
iOIsplay "continvjing with the test' 



SEQ 0048 



I<4 



CVHsrtBO .m QUICK VtRIKT 

SPLADR- SfcT THE SEGMENT ADDRESS 

1606 
160 : 
1608 
1609 
1610 
loll 
loU^ 
1615 
1614 
16 IS 
1616 
1617 
1613 
1619 
16.^0 



MA\Cr<0 MIPOO 10-APR-tt4 07:55 PAGE 40 
TABLE WITH A POSITIVE ADDRESSI 

.S8TTL SPLADR- Set tht Segmenv A-v .'^ . :.., Telle with a positive oddresslng pattern 

INPUTS: [lEl] The acff ^r? s bit tT zc used In developing 

the ac''**r' ■«;■.! ot-t*. erd. 



SEQ 0049 



16'_*1 
162^ 
1623 
1624 
1625 
1626 
1627 
1628 
1629 
1630 
1651 
1632 
1633 
1634 
1635 
1636 
1637 
1638 
1639 
1640 
1641 
1642 



005076 
005100 
0051C0 

005104 

005110 
005114 
005120 
005124 

005126 

005130 

005132 
005134 

005136 

005140 
005144 



000240 

00456 7 

012704 

012703 
012702 
012701 
005000 

010014 

060324 

060500 
030100 
001403 

062700 
040100 



00074& 

120000 

020000 
010000 
160000 



000002 



C05146 077211 



OUTPUTS: 



[DOl] - The Sc'jt-i'i'. ^;:rrr.r-' i-ible is set up with a positive 
oddr^i**;! i ng >ft ". v* ^ 



CALLTiJG SEQUENCE: 



CALL 



SUBOr'OINATE ROUTINES CALLED: ■v'o-.v 



. A«4i4^4^* + 4*4*44>***> 



* + «««* 4t «« 4> ♦ 4> « 



005150 

OOblbO 



000207 



SPLADR: 


Pl^h 
JSI. 


f^RVE 

95.PRr.':^3 




MOV 




i•^^^•00'" ' -. 




MOV 
MOV 
MOV 
CLR 




-409' . .R2 
M i oOO'' . R .. 

no 


IJ: 


MOV 




R0,(R4) 




ADD 




R3.CR4)* 




ADD 
RIT 
BEQ 




H5.R0 
Rl.RO 
2J 




ADD 
BIC 




Rl.RO 


25: 


SCJ 




R2,l$ 




RtruRN 

RTS 


PC 



, ao '>i' ' /.;';. ':'4 



^«..., - Qf the segment nckjress 
aoJ»\::s5 to be used CPAR 1 range). 



Set ■'. 
tah ■ 
Sf t VI 

t^tat"). . ii^ .■ m JsU for a 4K word range. 
Ini t i ai re ^e tiddress word. 



Place ^-hft address In the Seament Address 

table. 



Update the address. 
ChecU for an overflow. 



If overflow, add In the overflow Increment. 
Mauk out the overflow bit. 

Continue until the table is full. 



1.4 



CVMSBOO .:'M QUICK v(-Riri 
SMIADR ■ StT THE SEGMENT ADDRESS 



1^4S 
]b46 

164 7 
1648 
1649 
1650 
16^1 
16S.> 
165? 
1654 
1655 
1656 

165 7 
1658 



MACRO Ml^OO lO-APR-04 07:55 PAGE 41 
TABLE WITH A NEGATIVE ADDRESSI 

.SBTTl. SMIAOR Set the Segment Address Table with a negative addresslrig pattern 

: INPUTS: [lEl] The address bit to be used in developing 
J the address pattern. 



SEQ 0050 



1659 
1660 
1661 
1662 
1663 
1664 
1665 
1666 
1667 
1668 
1669 
1670 
1671 
1672 
16/3 
1674 
1675 
1676 
1677 
16/8 
1679 
1680 



005152 
005154 
005154 

005160 

005164 
005170 
005174 
005200 

005204 

005206 

005210 
005212 
005214 

005216 
005222 



000240 

004567 

012704 

012703 
012702 
012701 
012700 

010014 

060324 

160500 
030100 
001403 

162700 
040100 



005224 077211 



000672 

120000 

020000 
010000 
160000 
017776 



000002 



; 



OUTPUTS: 



[DOl] - The Segment Address Table is set up with a negative 
addressing pattern. 



CALLING SEQUENCE: 



CALL 



f;MTADR.IEl 



jSUBORDINATE ROUTINES CALLED: None. 

iUFD 03/13/84 

I Preserve reg i sters . 

iSet up the address of the segment nddress 

;table. 

I Set the base address to be used (PAR 1 range). 

J Set word count. 

t Establish a masU for a 4!< word flange. 

i Initialize the address word. 

jPlace the address in the Segment Address 
I table. 

■ 

i Update the address. 
;Check for an underflow. 



005226 
005cf26 



oooao? 



SMIAOR: 


NOP 

PRESERVE 

JSR R5.PREG05 




MOV 


0120000, R4 




MOV 
MOV 
MOV 
MOV 


020000. R3 
04096. .R2 
0160000. Rl 
017776, RO 


1$: 


MOV 


R0.(R4) 




ADD 


R3.CR4)* 




SUB 
BIT 
BEQ 


R5,R0 
Rl.RO 
2$ 




SUB 
BIC 


02, RO 
Rl.RO 


2$: 


SOB 


R2.l$ 




RE TURN 
RTS 


PC 



J If underflow, subtract underflow increment . 
;Mask out the underflow bits, 

iContinue until the table is full. 



h.i /I 



CVMSr>JO O-.^M QUICK VFRIFl MACRO MLaOO lO-APR-64 07j55 
INVtRT INVEK^ A SEGMENT OF MEMORY 



M4 

PAGE 42 



SEQ OOlJi 



l68^ 

1685 
1684 
1685 
1686 
lb8"' 
1688 
1689 
1690 
1691 
1692 
1693 
16^4 
1695 
1696 
1697 
1698 
1699 
1700 
1701 
1702 
1703 

1704 
1705 
W06 
1 07 
? /G8 
709 
.710 
1711 
1712 
1713 
1714 
1715 



005230 
005232 
005232 

005236 
005242 



005250 
005252 
005254 
005256 

005260 
005260 
005264 



. SBTTL INVERT - Invert a segment of memory 
INPUTS: [DIl] Addresses from the segment address table. 



OUTPUTS: 



[OEl] - The test flag. It will be equal to minus 4096 or zero 

if no errors are detected. 
[001] - The 4I< word memory segment determined by the segment 

address table is inverted, 



CALLING SEQUENCE: 



CALL 



INVERT 



COMMENTS; The memory segment Is accessed via the segment address table. 
Each word in the memory segment should be pointed to by one, 
ond only one element of the segment address table. Thus the 
order In which the memory segment i •.; accessed Is determined 
by the ordering of the segment address table. 

SUBORDINATE ROUTINES CALLED: None. 



000240 

004567 000614 

012705 120000 
005000 



INVERT: NOP 

PRESERVE 

JSR R5,PREG05 



005244 012703 010000 



012504 
005114 
061400 
077304 



010066 000002 
000207 



1$: 



MOV 
CLR 


V>120000.R5 
RO 


MOV 


M096. ,R3 


MOV 
COM 
ADO 
SOB 


CR5)*.R4 
CR4) 
(R4).R0 
R3,l$ 


RETURN 

MOV 

RTS 


RO 

RO.ROSLOT(SP) 

PC 



tUrO 03/13/84 
;Preserve registers. 



;Startin^ address of the segment address table. 
[Initialise the test flag. 

I Set the word rount . 

iGet the address to be tested. 

I Invert i t . 

jUpdate the test flag. 

iDo the complete segment. 

jReturn the test flag [OEll. 



Kl/1 



CVMSBBO 


2M QUICK VF-RIFY 


SEUtRR 


SIGNAL 


AN ERROR IN A 


1".M.7 








1718 








1719 








1720 








1721 








1722 








1723 








1724 








1725 








1726 








1727 








1728 








1729 








1750 








1731 


005266 


013700 


172342 


1732 








1735 


005272 


004767 


001712 


1734 


005276 








005276 


012605 






005300 


004767 


000140 


1735 








1736 


005304 








005304 


<'-.^705 


002143 




005310 


004:'67 


000270 


1757 








1736 


005314 








005314 


010005 






005316 


012704 


000060 




005522 


012703 


000010 




005526 


004 767 


000306 


1739 








1740 


005532 


005767 


000562 


1741 


005336 


001405 




1742 


005340 


012737 


000032 


1743 


005346 








005346 


004 767 


174714 


1744 


005352 






174b 


005352 


004767 


001550 


1746 








1747 


005356 








005356 


012605 






005360 


004 767 


000150 


1748 








1749 


005364 








005364 


004 767 


176664 


1 7:jO 








1751 


005^70 








005370 


004 767 


174004 



MACRO M1200 



N4 

lO-APR-84 07:55 PAG£ 43 



. SBTTL StGERR - S i gnal on error In a segment of memory 

INPUTS: toil] The contents of PAR 1, the current memory segment 

under test. 



OUTPUTS. 



[ADOl] - Memory segment error messtf-cts ore disployed on the 
console. 



CALLING SEQUENCE: CALL 
SUBORDINATE ROUTINES CALLED: 



SEGERR 



[CLl] -ERROR [CL2] -WRITE [CL31-WRIUSN 
rCL4 3-WRITPG [CL5]-SETBAI< [CL6]-MAIN1 



001104 



SEGERR: MOV 

JSR 
CALL 
MOV 
JSR 



CALL 

MOV 

JSR 

CALL 

MOV 

MOV 

MUV 

JSR 

TST 

BEG 

MOV 

CALL 

JSR 

JSR 

CALL 

MOV 

JSR 

CALL 
JSR 

CALL 
JSR 



li: 



a<?KPARl.RO 

PC.TSEGER 
Efi;^OR,(SP)f 
(SP)* .R5 
PC. ERROR 

WRITE, ^ESEGAD 
*ESEGAD..^5 
PC. WRITE 



URIUSN,R0./>'0,^?8. 

R0.R5 

*'0.R4 

^8. .R3 

PC.WRIUSN 

UrOCHN 
1$ 

d32,ai?UF0CHR 

CTRLX 

PC.CTRLX 



jGet the current contents of PAR 1. 

;Get the address of the message table. 
jSignol the error and wolt for Control E. 



iOIsploy the "this is the bod segment" messoge. 
jOisplay the bad segment address. 



PC.TRSTRT 

WRITPG.tSP). 

(SP)»,R5 

PC.URITPG 

St- THAK 
PC.SETBAK 

MAIM 
PC.MAINI 



ARE wr IN urn F/;, . mode? 

BR IK NOT 

MAKE LIKE t/ TYPED 

LET'S GET OUT 



;UFD 03/08/84 

;UFO 03/08/84 

;U'D 05/06/84 

;UFO 05/08/84 



;UF'J 03/08-84 
;Get the address of the "restarting* message 
J address table. 
;Display the message. 



; Ensure the program i s re'i-'iy f cr restart . 
iGo restart the program. 



SEQ 0052 



CVMSBRO 
ABORT 

KM 

i7sa 

1760 
U6l 
176 J 
1765 
17t>4 

l7bS 
1766 

1767 
1766 
1769 

1^70 
1771 
1772 
1773 
1774 



.^M QUICK veRU' 
(.ABORT ROUTINE') 



"I MACRO M1200 10 APR fl4 07:55 PAGt 44 
If UNDER 'JfD TRAP UP TO THE MONITOR 



SEQ 0053 



005374 
005400 

00540c' 
005402 

005406 
005414 
005422 
005424 

005432 
005436 
005442 



005767 
001420 



000522 



004767 176646 

016757 000512 000030 
016757 000506 000052 



012760 17777 



000042 



005067 
004777 
000207 



172404 
000452 



.SBTTi. ABORT - (ABORT ROUTINE) If und«r UFD trap up to th« ..™onI tor 



J INPUTS! 
I 



[lEll SAV30,SAV32 contain th« location in the monitor 
to oo to ««t th# d»r error floo 



44 



iCALLING SEQUENCE: JSR PC, ABORT 



ABORT: 



10$ 



TST 
BEQ 


UFDQUI 
10$ 


CAll. 
JSR 


SETBAK 
PC.SETBAK 


MOV 
MOV 
EMT 
MOV 


5AV30.Qd50 
SAV3?,S<>32 
• 42 
0-l.42(RU) 


CLR 
JSR 
RTS 


42 

PC.aXXRTN 

PC 



iTest for UFD QUIET n>ode lUTD 02/06/84 
ilf not UTO then continue normal operation 



iRtSTORE PGM TO ORIH l.OC. 



jUTD 03/09/84 



iReetore EMT location 30 

iReetore EMT priority location 52 

|Get OCA into RO from monitor 
iSet a -1 into location drserr In 

(Clear monitor return flag 

iReturn to XXOP*. 

tif not uro return to mainline 



tnoni tor 



CVMSBBO .^M UUTCK Vf.RIFl 



C 



r 



) 



MACRO MUOO 10 -APR 84 07:55 PAGt 45 



ERROR ■ HANDLE STANDARD ERROR ACTIONS 



SEQ 0054 



1 7 76 








177; 








17 78 








17;^ 








1780 








1781 








178." 








178? 








1784 








1785 








1 786 








1787 








1788 








1789 








1790 








1791 








179^ 


005444 


000240 




1795 


005446 








005446 


004567 


000400 


1794 








1795 


005452 


004 767 


177716 


1796 


005456 


004767 


001416 


1797 


005462 








005462 


012605 






005464 


004 767 


000044 


1798 








1799 


0054 70 








0054 70 


004 76 7 


1744;0 


1800 


0054 74 


CIv02 7 


000030 


1801 


005500 


001C02 




1802 


005502 








005502 


0C4767 


174560 


1803 








1804 


005506 


005767 


000406 


1805 


005512 


001003 




1806 


005514 


020027 


000005 


1807 


005520 


001363 




1806 








1809 


0055t.'2 








005522 


016605 


000014 




005526 


004 767 


000002 


1810 








1811 


005552 








005532 


000207 





.SBTTL tRROR Handle stand, srd error actions 

t INPUTS; [lEll The address of the table of messages to be displayed 
1 If the operator Inputs o Control E. 



tADOll - The standard customer error message Is displayed on 

tne console, 
[*AD02l- Expanded error information based on lEl Is displayed 

on the console 



; OUTPUTS I 

t 

I 

t 

i 

I CALL ING SEQUENCE : CALL ERROR , IE 1 

t 

I SUBORDINATE ROUTINES CALLED: [CLll-WRITPG [CL21-GETCHR [•CL5] WRITPG 

I f*CL4l-CTRLX 

jUTO 03/13/84 

I Preserve reg i sters . 



ERROR: 


NOP 








PRESERVE 






JSR 


H5. 


.PREG05 




JSR 


PC, 


.ABORT 




JSR 


PC. 


.TCUSTM 




CALL 


WRITPG.CSP)* 




MOV 


(SP).,R5 




JSR 


PC. 


.WRITPG 


It: 


CALL 


GETCHR 




JSR 


PC. 


, GETCHR 




CMP 


RO. 


,#50 




RNE 


2J 






CALL 


CTRLX 




JSR 


PC, 


.CTRLX 


^%i 


TST 


Uf DCHN 




BNE 


5» 






CMP 


RO. 


,05 




BNE 


1« 




3$: 


CALL 


WRITPG. R5SL0 




MOV 


R5SL0T(SP),R 




JSR 


PC, 


.WRITPG 




RFTJRN 








RT5 


PC 





iChecl* If we are und<*r UFO ? 

iGet the address of the table containing the 

jcustomer messaQes and display It. 



lGet an Input character. 

iCheck for Control X. 

1 

|If Control X, exit via CTRlX. 



I ARE UE IN UfO f.S. MODE? 

iBR a we APt 

iChect- for Control E. 

I If not Control E, wa't I rt loop. 



lUTD 05/06/84 
jUED 03/08/84 



WRITPG. R5SL0T(5P) iD^splay the expanded error information. 



D' 



) 



CVMStlRO ,'h 'XnCK Vt-.RIM 
WRlTPu IWRITE PACKAGED WRITE 



1814 

lel^ 
131 ' 
lt<13 
181^ 

18.?1 

18«?5 
1».M 
18w^5 
1836 



O0f.S34 
005S34 
005536 



010546 
0104A6 



1837 
1838 
1829 
1850 
1831 
1832 
1833 

1834 
1835 
1836 



1837 



005540 010504 



005542 
005544 

005546 
005546 
005552 

005554 
005554 
005556 
005560 
005560 



012405 
001403 



004767 
000773 



0i2604 
012605 

000207 



MACRO m200 10 APR 84 07:55 PAGE 46 

SEVERAL ASCI^ STRING'^ WITH RETU 

.SBTTl WRITPG (WRITE PACKAGE) Write several ASCIi! strings with returns 

; INPUTS; [lEll R5 contains a table address. That table co.-^talns 

I the offsets (Into the text table) of the strings to be 

J printed in order. The table mu-it be terminated by a ztro. 



SF.U 0055 



000010 



1 OUTPUTS: 



tADOl] The strings are displayed on th<» console. 



WRITPG.IEI 



t CALLING SEQUE.NCE; CALL 

t SUBORDINATE ROUTINES CALLED: WRITLM. 



WRITPG: PUSH 
MOV 
MOV 

MOV 



It 



2( 



MOV 
PEQ 

CALL 

JSR 

BR 

POP 

MOV 

MiiV 

RETURN 

RTS 



R5,R4 
R5, -CSP) 
R4. (5P) 

R5,R4 

(R4S,R5 
2i 

URITLN 

PC.WHITLN 

1% 

R4,R5 

(SP)».P'» 

C'.P)*,R5 

PC 



iSav* registers. 



(Put the table address In R4 . 

jPut the string offset In R5 for URITLN. 
(If terminator found, get out, 

jPrlnt the string as a line. 

jAnd get the next string, 

iRestore registers. 



CVMr;BBO JM QUICK Vf.Riri 
WRITE t WRITE PACKAGE) WRITE 

i86r^ 

1866 
186"-* 
1868 
1869 
1870 
1871 



1875 



1874 
1875 
1876 
1877 
1878 
1879 
1880 
1881 
1882 

1883 
1884 
1885 



1686 



005604 
005604 
005606 

005610 
005614 
005616 

005620 
005622 

005624 
00562A 

005630 

005632 
005632 
005634 
005636 
005636 



012604 
012605 

000207 



pr- 

MACRO M1200 10-APR-B4 07:55 PAGE 48 

AN ASCIZ STRING TO THE CONSOLE 

.SBTTL WRITE - (WRITE PACKAGE) Write an ASCIZ string to the console 

iINPUTS: [lEl] R5 contains the offset (Into the te>^t orea) of the 

i ASCIZ string. 

t 

;OUTPUTS: [ADOl] - The ASCIZ string is written to the console. 

icALLING SEQUENCE CALL. WRITE. lEl 

!SUB0RDINATE ROUTINES CALLED: [CLl] -PRTCHR. 



SEQ 0057 



010546 
010446 

004767 001512 

012604 

060504 

112405 
001403 



004 76;' 174310 
000773 



WRITE: 



U 



2Jj 



PUSH 

liOV 

HOV 

JSR 
MOV 
ADD 

MOVB 
BEQ 

Cmll 

JSR 
BR 

POP 

MOV 

MOV 

RETURN 

RTS 



R5.R4 

R5.-CSP) 

R4,~(SP:» 

PC.LOCTXT 

(SP)*,R4 

R5,R4 

(R4)*.R5 
2$ 

PRTCHR 

PC.PRTCHR 

I* 

R4.R5 

(SP)..R4 

CSP)mR5 

PC 



J Save registers. 



(Get the text area address. 
(Put it in R4. 
jAdd in the offset. 

jPut a byte in R5 for PRTCHR. 
ilf end of string, get out. 

(If not, print the character, 

;And get the ne\t byte. 

iRestore registers. 



G^) 



CVMSBBC iM QUICK VtRIFl 
WRIUSN - t WRITE PACKAGE) WRITE 



1888 
188'^ 
1890 
1891 
189.^ 
189? 
1894 
1895 
1896 
1897 
1898 
1899 
1900 
1901 
1902 
1905 
1904 
1905 
1906 
1907 
1908 



1909 
1910 
1911 
1912 
1913 
1914 
1915 
1916 
1917 
1918 
1919 
1920 
1921 
1922 
1923 
1924 
1925 

1926 

1927 



1928 

1929 
1950 
1931 
1932 
1953 
1954 
1935 
1936 
193 7 
193P 
19i9 



005640 
005642 
005642 
005646 
005650 
00565? 

005656 
005662 
005664 
005670 

005672 
005676 
005700 
005702 
005704 
005706 

005/10 
005710 
005712 
005712 
005714 
005714 
005720 



000240 

004567 
010500 
005046 
004767 

022703 
001434 
022703 
001434 

012701 
'''05005 
006100 
006105 
004 7'o 
077105 



012600 

012600 

010066 
000207 



005722 004736 



005724 
005726 
005730 



005705 
001402 
012704 



MACRO M1200 lO-APR-84 07:55 PAGE 49 
AN UNSIGNED NUMBER TO THE CONSO 

.S9TTL WRIUSN - CWRITE PACKAGE) Write an unslflned number tc the console 



5EQ 0058 



000204 

000044 
000010 
000012 

000020 



000002 



000060 



t INPUTS: 



riEl3 
[IE21 



UE31 



R5 contains the number In binary. 

R4 contains 60 If leading ^eros are to b,' printed, 

40 If leading spaces are to be printed, zero 

If neither. 

WARNING - If IFl and IE2 are both zero, nothing will 

be printed. 
R3 contains 10 (base 10) if the number Is to be 
converted to Decimal, 8 If octal. Default is binary. 



; OUTPUTS: [ADOi] The number is displayed on the console terminal. 

I CALLING SEQUENCE: CALL WRIUSN, IE 1 . IE2. IE3 

* 

jCOMMEN-S: This Is a two page module. 

isueOROINATE ROUTINES CALLED: f CLll -PRTCHR. 

;UFO 03/13/84 
(Preserve reg I sters . 

I Put the number In RO. 

(Create a slot for the character count. 

(Set up for the local co-routine calls. 

(Check for octal printing, 
(Go handle octal. 
(Check for decimal printing. 
(Go handle decimal. 

(Set loop count to print 16 bits In binary. 

(Put a bit In R5. 

( 

(The co-routine call prints the bit. 

(Print 16 bits. 

(Purge the stack of the co routine call, 

(Get the character count In RO. 

(Return the character count. 



(This co-routine converts to ASCII and prints 



WRIUSN: 


NOP 






PRESERVE 




JSR 


R5.PREG05 




MOV 


R5.R0 




CLR 


(SP) 




JSR 


PC. 35 




CMP 


08.,R3 




BE. 


5* 




CMP 


010., R3 




BEQ 


6$ 




MOV 


016. ,R1 


1$: 


CLR 


R5 




ROL 


RO 




ROL 


R5 




JSR 


PC.a(SP)* 




SOB 


Rl.l$ 


2$: 


POP 


RO 




MOV 


CSP)».RO 




POP 


RO 




MOV 


(SP)»,RO 




RETURN 


RO 




MOV 


RO.ROSLOT(SP) 




RTS 


PC 



3$ 



005754 005704 



4$ 



JSR 

T'.iT 
BEQ 
MOV 

TST 



PC,a(SP)f 

R5 
4$ 
060, R4 

R4 



(Return from the co routine. 

(Check the number for .'ero. 

1 

(If not ^ero, set to print any later scroti. 

(Check the print flag. 



I-I r : 



CVMSBBO 0-JM QUICK VERiri 



MACRO ril200 lO-APR-64 07:55 PAGE 49-1 



USN ■ (WRITE 


PACKAGE) WRITE 


AN UNSIGNED NUMBER TO 


THE CONSO 


1*^40 005736 


001771 


DEQ 


3* 


1941 005740 


060405 


ADD 


R4,R5 


1942 00574? 




CALL 


PRTCHR 


00S7A^ 


004767 174172 


JSR 


PC.PRTCHR 


194? 005746 


005266 000002 


INC 


2CSP) 


1944 005752 


000763 


BR 


3$ 



StQ 0059 



ilf zero, don't print. 
1 Convert to ASCII. 
(Print the character. 

;Bump the character count. 
J Return from the co- routine. 



T!) 



CVMSRBO .-^fi QUICK ve.RlFt MACRO MUOO 10-APft-8fl 07:55 PAGE 50 
WRIUSN - (WRITE PACKAGE) WRITE AN UNSIGNED NUMBER TO THE CONSO 



SEQ 0060 



1946 
194 7 

i^4a 

1^49 
1950 
1951 
195^ 
1955 
1954 
1955 
1956 
1957 
1958 
1959 
1960 
1961 
1962 
1963 
1064 
1965 
1966 
1967 
196ft 
1969 
1970 
1971 
1972 
19 75 
1974 
:975 
1976 
1977 
1978 
1979 
1980 
1981 
1982 
1983 
1984 
1985 
1986 
1987 
1988 
1989 



005 754 
005760 



005766 
005770 



005774 
005776 

006000 
00600P 
006004 

006006 
006010 
006012 



006014 
006016 
006020 
006022 
006024 
006026 
006030 
006032 

006034 
006036 
006040 
006042 
006044 
006046 
006050 



004 767 
000402 



012602 
000401 



005772 004736 



012201 
001744 

005005 
02C100 
101372 

005205 
160100 
000773 



004736 
100000 
010000 
001000 
000100 
000010 
00000 I 
000000 

004736 
023420 
001750 
000144 
000012 
000001 
000000 



000034 



005762 004 767 000046 





! * * * 






; T'le following co 
1 - - 


5$: 


JSR 


PC. 11$ 




BR 


7$ 


6$: 


JSR 


PC. 12$ 


7$: 


MOV 


(SP)*,R2 




BR 


9$ 


8J: 


JSR 


PC.aCSP)* 


9$: 


MOV 


(R2)»,R1 




BEQ 


2$ 




CLR 


R5 


10$: 


CMP 


Rl.RO 




BHI 


8$ 




INC 


R5 




SUB 


Rl.RO 




BR 


10$ 


11$: 


JSR 


PC,S(5P)* 




.WORD 


100000 




.WORD 


10000 




.WORO 


1000 




.UORO 


100 




.UORO 


10 




.WORD 


1 




.WORD 





12$: 


JSR 


pc.acsp)* 




.WORD 


10000. 




.WORD 


1000. 




.WORD 


100. 




.WORD 


10. 




.WORD 


1 




.WORD 






following code converts to octal or decimal and prints. 



iGet the address of the octal conversion table 



iGet the address of the decimal table. 

tPut the table address In R2. 
I Go do the conversion. 

jConvert to ASCII and print. 

(Get the next base from the toble. 
ilf finished, get out. 

(Initialise the digit to be printed. 
{Compare the base with the remaining number. 
I If the base is higher, go print the number. 

I If not, bump the number. 
(Subtract the base from the number. 
;Lcop until the base is higher. 



;Return the address of the octal table. 



(Table terminator. 

(Return the address of the dec-mal table 



(Tabic terminator. 



Jf3 



CVMSBRO .>M QUICK VtRlKlr MACRO hl200 lO-APR-84 07:55 PAGt 51 
PREGO? ■ PRESERVE REGISTERS RO THROUGH R5 TOR SUBROUTINE CALLS 



SEQ 0061 



1*^91 

1993 
1994 

1995 
1996 
1997 
1^98 
1999 

r?OOC 

2001 
2002 
2005 
2004 
2005 
2006 
2007 
2008 
2009 
2010 
2011 
2012 
2013 



2014 
2015 
2016 
2017 
2018 
2019 
2020 
2021 
2022 
2023 



2024 
2025 



006052 



0J6052 
006052 
006054 
006056 
006060 
006062 
006064 
006066 



006072 004736 



00*50 /4 
006074 
006076 
C06100 
006 1 O;.' 
006104 
006106 

OOf.llO 
006110 



012600 
0126C1 
012602 
012603 
012604 
01260r 



000^07 



.SBTTL PREG05 - Preserve Registers RO through R5 for subroutine calls 

INPUTS: The return address from the caller's caller must be the last 
entry on the stack. 



OUTPUTS: 



Registers RO through R5 are saved on the stack. When 
the return Is made from the colling subroutine, they ore 
automatically restorec'. 



I 



CALLING SEQUENCE: PRESERVE 

COMMENTS: This routine is re-entrant. 

J Parameters may be passed out of a subroutine by using the 

"RETURN" macro. 

SUBORDINATE ROUTINES CALLED: None. 



PREG05i 



iR5 has been loaded on the stack by the call. 

;R5 now contains the return to the colling routine. 



010446 
010346 
010246 
010146 
01004b 
010546 
016605 000014 



PUSH 


R4.R3.R2,R1,R0 


R5 


MOV 


R4, -(3P) 




MOV 


R3,-CSP) 




MOV 


R2, -CSP) 




MOV 


Rl, -^SP) 




MOV 


RO. -CSP) 




MOV 


R5. -CSP) 




MOV 


R5SL0TCSP),R5 


jRestore R5 to Its original value. 


JSR 


PC,a(SP)» 


jColl the calling routine. 



The following code is executed when the calling routine 
does a "RETURN". 



POP 


R0.R1.R2.R3,R4,R5 


MOV 


(SP)» ,R0 


MOV 


(SP)»,R1 


MOV 


( SP ) ♦ . R2 


MOV 


(SP)».R-^ 


MOV 


(SP)*,R4 


MOV 


(SP)*,R5 


tU TURN 


( 


RTS 


PC 



;Return to the caller's catlei^. 



CVMi^tmO .?M QUICK VtRlFK 
GLOBAL S 



20L^9 
20S0 
20?1 
?0^2 
^05? 
2034 
J035 
2056 
2057 
2058 
2059 
2040 
2041 
2042 
2043 
2044 
2045 
2046 
204 7 
2048 
2049 
2050 
2051 
2052 
2055 
2054 
2055 



006112 
006114 



006120 
006122 

006124 
006126 
006150 
006132 
006134 
006136 



006140 
006142 
006144 
006146 



OOOOOO 
OOOOOO 



006116 OOOOOO 



OOOOOO 
OOOOOO 

OOOOOO 
OOOOOO 
OOOCOO 
OOOOOO 
OOOOOO 
OOOOOO 



177560 
177562 
177564 
177566 



MACRO Iil200 lO-APR-84 07:55 PAGE 52 



.SBTTL GLOBALS 



SWADO : 
XXRTN: 



.WORD 
.WORD 



RF.LFLG: .WORD 



UFDCHN: 
UFDQUI: 


.WORD 
.WORD 






5AV30: 

SAV32: 

SAV52: 

SAVSP: 

SAVCAC: 

ORIONF: 


.WORD 
.WORD 
.WORD 
.WORD 
.WORD 
.WORD 












: ♦ ♦ * 

; These 
. _ _ , 


are used by 


KBCSR: 
KBBUF : 
DSPCSR: 
DSPBUFj 


.WORD 
.WORD 
.WORD 
»WORD 


DEFCON 
DEFC0N»2 
DEFC0N*4 
DEFC0N*6 



SEQ 0062 



jWill contain the address of SWSTAC In XXDP*. 

;WI11 contain the XXDP* return address/Chain 
I Mode flag. 

;Relocat ion flag. 

;UFD CHAIN MODE flag 

fUFD QUIET MODE FLAG jUFD 02/08/64 

iWill contain contents of EMT vector 



:5AVE FOR LOC 52 
iSAVE FOR SP 
:SAVE FOR CACHE 
; ORION CP FLAG 



UFD 02/08/84 
UFO 02/08/84 
UFD 04/03/84 
UFD 04/03/84 



the Write Package utility modules 



; Keyboard CSR. 
;Keyboard buffer. 
jDlsolay CSR . 
jOisploy buffer. 



L. ''•> 



CVMSBRO 0-.'M QUICK Vf.RIKI MACRO MIPOO lO-APRa4 0/:55 PAGE. 55 
TKMAPl - (DATA SECTION") - INITIAL MEMORY MANAGEMENT AND PSW MA 



SEQ 0063 



?.0S7 

^or^8 

2059 
2060 
2061 
2062 
2063 
2064 
2065 
2066 
2067 
2068 
2069 
2070 
2071 
2072 
2073 
207** 
2075 
2076 
2077 
2078 
2079 
2080 
2081 
2082 
2063 
2084 
2085 
2086 
2087 
2088 
2089 
2090 
2091 
2092 
2093 
2094 
2095 
2096 
2097 
2098 
2099 
2100 
2101 
2102 
2105 
2104 



006150 004 736 



006152 
006154 
006156 
C06160 
006162 
006164 
006166 
006170 
006172 
006174 
0061^6 
006200 
006202 
006204 
006206 
006210 

006212 
006214 
006216 
006220 
006222 
006224 
006226 
006230 
006232 
006234 
006236 
006240 
006242 
006244 
006246 
006250 

006252 
006254 
006256 
006260 

006262 
006264 

006266 
006270 



004406 
172300 
077406 
172302 
077406 
172304 
077406 
1723C6 
077406 
172310 
077406 
172312 
077406 
172314 
077406 
172316 

001000 
172340 
000000 
172342 
000200 
172344 
000400 
172346 
001000 
172350 
001200 
172352 
001400 
172354 
177600 
172356 

000020 
172516 
000001 
177572 

OOOOOO 

177776 

000000 
000000 



.SBTTL TKMAPl - (Data section) - Initial memory management and PSW mop 

^ jTable locater . 



TKMAPl: JSR 


PC.acsi 


.WORD 


RW256 


.WORD 


KPDRO 


.WORD 


RW4096 


.WORD 


KPDRl 


.WORD 


RW4096 


.WORD 


KPDR2 


.WORD 


RW4096 


.WORJ 


KPDR3 


. WORD 


RW4096 


. WORD 


KPDR4 


.WORD 


RW4096 


.WORD 


KPDR5 


.WORD 


RW4096 


.WORD 


KPDR6 


.WORD 


RW4096 


.WORD 


KP0R7 


.WORD 


PAR16K 


.WORD 


KPARO 


.WORD 


PAROK 


.WORD 


KPARl 


.WORD 


PAR4K 


.WORD 


KPAR2 


.WORD 


PAR8K 


.WORD 


KPAR3 


.WORD 


PAR16K 


.WORD 


KPAR4 


.WORD 


PAR20K 


.WORD 


KPAR5 


.WORD 


PAR24K 


.WORD 


KPAR6 


.WORD 


PARIO 


.WORD 


KPAR7 


.WORD 


MMU22A 


.WORD 


MMUSR3 


.WORD 


MMUENA 


.WORD 


MMUSRO 


.WORD 





.WORD 


PSW 


.WORD 





.WORD 






J 256 words, 
I Address of 
1 4096 words 
; Address of 
i4096 words 
J Address of 
;4096 worcs 
(Address of 
1 4096 words 
; Address of 
J 4096 words 
(Address of 
;4096 words 
: Address of 
(4096 words 
(Address of 



Read/Write. 

PDR 0. 
. Read/Write 

PDR 1. 
. Read/Wr;te 

PDR 2. 
, Read/Write 

PDR 3. 
, Read/Write 

PDR 4. 
. Read/Write 

PDR 5. 
. Read/Write 

PLv^ 6. 
, Read/Write 

PDR 7. 



(Base address at 16K. 
(Address of PAR 0. 
(Base address at 0. 
(Adjress of PAR 1. 
(Base address at 4t< . 
(Addr^tss of PAR 2. 
(Base ackiress at 8K . 
(Address of PAR 3. 
(Base address nt 16K . 
(Address of PAR 4. 
(Base addres.. tt 20K . 
i.'^.^Hress rT PAR 5. 
(Base aodress at 24K . 
(Address of PAR 6. 
(Base address at I/O 
(Address of PAR 7. 



page 



(Enable 22 bit mapping. 
(Address of MMU SR3. 
(Enable memoi'y management, 
(Address of MMU SRO. 

(Processor priority zero. Kernal mode 
(Address of PSW. 



(Table terminator 



► ^ f" 



M^ 



CVMSBBO c^M aur'*K Vt.RIKi MACRO M1200 10-APR-.4 07:55 PAGt 54 
TKMAP? - (DATA SECTION) - MEMORY M/^' vGtMENT MAP FOR LOW 16K OP 



SEQ 0064 



^106 






2l0f 






2\0S 






2109 






?A10 


006272 


004 736 


2111 






2112 


006274 


000000 


2115 


006276 


172340 


2114 


006300 


001000 


2115 


006302 


172342 


2116 


006304 


001200 


2317 


006306 


172344 


2118 


0C6310 


001400 


2119 


006312 


172346 


2120 


006314 


000000 


2121 


006316 


172350 


2122 


006320 


000200 


.'123 


006322 


172352 


2124 


006324 


000400 


2125 


006326 


172354 


2126 


006330 


000000 


2127 


006332 


000000 



.SBTTL TKMAP2 - (Data section) - Memory management map for low 16i< operation 



J Table locater. 

;6ase address at 0. 
t Address of PAR 0. 
iBase address at 16K 
; Address of PAR 1. 
(Base address at 20K 
(Address of PAR 2. 
jBisse address at 24K 
jAdc'-ess of PAR 3. 
iBase address at 0. 
» Address of PAR 4. 
J Base address at 4K. 
t Address of PAR 5. 
J Base address at 8K . 
J Address of PAR 6. 



TKMAP2; JSR 


PC.SCSP)* 


.WORD 


PAROK 


.WORD 


KPARO 


.WORD 


PAR16K 


.WORD 


KPARl 


.WORD 


PAR20K 


.WORD 


KPAR2 


.WORD 


PAR24K 


.WORD 


KPAH3 


.WORD 


PAROK 


.WORD 


KPAR4 


.WORD 


PAR4K 


.WORD 


KPAR5 


.WORD 


PAR8K 


.WORD 


KPAR6 


.WORD 





.WORD 






; Table terminator. 



K ir- 



N.^ 



) 



CVHbOBO 2M QUICK VtRU'lr MACRO M1200 lO-APR-84 07:55 PAGF 55 
TKMAP? - (DATA SF.CTION) MEMORY MANAGEMENT MAP fOR TESTING 



SEQ 0065 



21^4 






iL-150 






2151 






2152 


006554 


004 736 


2153 






2154 


006536 


077400 


2155 


006340 


172304 


2136 


006342 


077400 


2157 


006344 


172306 


2136 


006346 


077402 


2139 


006350 


172/10 


2140 


0C6352 


077402 


2141 


006354 


172312 


2142 


006356 


077400 


2143 


006360 


172314 


214 ■■ 


006362 


COnoOO 


2lHb 


006364 


OUUOOO 



.SBTTL TKMAPS - CData section) Memory Management Map for tef:t'ng 



t Table locate.-. 

;Non-Res rdent . 

; Address of ^0? 2 

;Non-Re3ider*. . 

; Address of PDR 3 

;Read only, 

J Address of PDR 4 

(Read only. 
Address of PDR 5 
Non -Res ident . 
Adcress of PDR 6 

Table terminator 



TKMAP3: JSR 


pc,a(sp)f 


.WORD 


NR4096 


.WORD 


KPDR2 


.WORD 


NR4096 


.WORD 


KPDR3 


.WORD 


R04096 


.WORD 


KPDR4 


.WORD 


R04096 


.WORD 


KPDR5 


.WORD 


NR4C96 


.WORD 


KPDR6 


.WORD 





.WORD 






CVMSBRO .^M (UUCK Vf RL- ^ MACRO Ml^OO 10 APR fl4 0?:55 PACit 5b 

TKHAP4 . cn^TA StCUON) MbMORf MANAGEMtNT MAP TO RESET AFTER T 



SEQ 0066 



JU7 






^\Ai^ 






.n49 






^150 


006^66 


o:)^:'^h 


2151 






?152 


006 370 


0. ;'406 


2153 


006572 


1 /2304 


2154 


006374 


07 7406 


2155 


006376 


W2306 


215^ 


006400 


077406 


2157 


006402 


172310 


2158 


006404 


07 7406 


2159 


006406 


V2312 


2160 


006410 


7 7406 


21M 


00f4u-» 


172314 


2U>2 


00^41 J 


000000 


2163 


00641.6 


000000 



.SBTTL TKMAP4 • (Data ««ction) M«ff^ry Manao«mont Mop to r«se't after testing 



f Table locater. 



TKMAP4: JSR 


PC . S( SP ) ♦ 


.WORD 


RW4096 


.UORO 


KPDR2 


.WORD 


RW4096 


.WORD 


KPDRS 


.WORD 


RW4096 


.WORD 


KPDR4 


.WORD 


RW4096 


.WORD 


KPDR5 


.WORD 


RW4096 


.WORD 


KP0R6 


.WORD 





.WORD 






1 4096 Mordv, 
lAddreev of 
1 4096 Hord«, 
lAddreee of 
1 4096 H0rd4. 
I Address of 
1 4096 Morde. 
lAddreee of 
1 4096 Morde, 
I Address of 



Read/Write. 
PDR 2. 

Read/Write. 
PDR 3. 

Read/ fr I te. 
PDR 4. 

Read/Wrlte. 
PDR 5. 

Read/Write, 
PDR 6. 



(Table terminator. 



C( 



CVMsnnO ,^M i^iTCK VtHUi macro MK»00 lO-APR a4 07:5b PAGt 57 

VCTORS tDATA ARtA) VICTORS TABLfc TOR UNXINT 



StQ 006 7 



J165 
Jl^: 

jiro 








.SBTTL 


VCTORS 


- (Data area) 


Vectors 


006420 


004 756 




VCTORS 


JSR 


PC.aCSP)* 


(Tab 


006422 


004 767 


175512 


VCTOOO 


JSR 


PC.UNXINT 




2).7a 


00C426 


004 767 


175506 


VCT004 


JSR 


PC, UNXINT 




^175 


006432 


004 767 


175502 


VCTOIO 


JSR 


PC.UNXINT 




^174 


006456 


004 767 


1752 76 


VCT014 


JSR 


PC.UNXINT 




J175 


00644? 


004 76 7 


175272 


VCT020 


JSR 


PC.UNXINT 




2176 


006446 


004 767 


175266 


VCT024 


JSR 


PC.UNXINT 




2r7 


006452 


004 767 


173262 


VCT050 


JSR 


PC.UNXINT 




2l7e 
217<» 
2180 


006456 


004767 


1 75256 


VCT0S4 


JSR 


PC.UNXINT 




006462 


004767 


175252 


VCT040 


JSR 


PC.l^XINT 




2181 


006466 


004 767 


175246 


VCT044 


JSR 


PC.UNXINT 




2182 


0064 72 


004 767 


175242 


VCT050 


JSR 


PC.UNXINT 




2183 


006476 


004767 


173256 


VCT054 


JSR 


PC.UNXINT 




2184 


OOC-502 


004 767 


175252 


VCT060 


JSR 


PC.IWXINT 




2185 


006506 


004 767 


175226 


VCT064 


JSR 


PC.UNXINT 




2186 


006512 


004 767 


17522? 


VCT070 


JSR 


PC.UNXINT 




2187 
2186 
2189 


006516 


004767 


175216 


VCT074 


JSR 


PC.UNXINT 




006522 


004 767 


175212 


VCTIOO 


JSR 


PC.UNXINT 




2190 


006526 


004 767 


175206 


VCT104 


JSR 


PC.UNXINT 




2191 


006532 


004 767 


175202 


VCTllO 


JSR 


PC.Lf4XINT 




2192 


006556 


004 767 


175176 


VCT114 


JSR 


PC.UNXINT 




2195 


006542 


004 76 7 


173172 


VCT120 


JSR 


PC.UNXINT 




2194 


006546 


004 767 


173166 


VCT124 


JSR 


PC.UNXINT 




2195 


006552 


004 767 


175162 


VCT130 


JSR 


PC.UNXINT 




2196 


006556 


004 767 


175156 


VCT154 


JSR 


PC.UNXINT 




2197 
















2198 


006562 


004 767 


175152 


VCT140 


JSR 


PC.UNXINT 




2199 


006566 


004 767 


175146 


VCT144 


JSR 


PC.UNXINT 




2200 


006572 


004 767 


175142 


VCT150 


JSR 


PC.UNXINT 




2201 


006576 


004 767 


175136 


VCT154 


JSR 


PC.UNXINT 




2202 


006602 


004 76 7 


175152 


VCT160 


JSR 


PC.UNXINT 




2205 


OOhhOh 


004 767 


175126 


VCT164 


JSR 


PCL^JXI'T 




2c^04 


006612 


004 76 7 


175122 


VCTl/O 


JSR 


PC.uNxiur 




2205 


000616 


004 767 


173116 


VCT174 


JSR 


PC.UNXINT 





table for UNXINT 



(Table locater. 



D( 



) 



CVMSBHO 2M QUICK Vi.MIfl MACRO M1200 10-APR-a4 07:55 PAUf. 58 
VCTORS ■ tDATA AREA") VECTORS TABLt FOR UNXINT 



2207 














220e 


006622 


004 767 


173112 


VCT200: 


JSR 


PC, UNXINT 


2209 


006626 


004 767 


173106 


VCT204: 


JSR 


PC, UNXINT 


2210 


006632 


004 767 


173102 


VCT210: 


JSR 


PC, UNXINT 


2211 


006636 


004 76 7 


173076 


VCT214: 


JSR 


PC. UNXINT 


221^ 


006642 


Ov4767 


173072 


VCT220: 


JSR 


PC. UNXINT 


2215 


006646 


004767 


173066 


VCT224: 


JSR 


PC. UNXINT 


2214 


006652 


004 767 


175062 


VCT230: 


JSR 


PC.IJNXINT 


2215 
2216 
2217 


006656 


004 767 


175056 


VCT234: 


JSR 


PC, UNXINT 


006662 


004 767 


175052 


VCT240: 


JSR 


PC. UNXINT 


2218 


006666 


004 767 


175046 


VCT244: 


JSR 


PC. UNXINT 


2219 


006672 


004 767 


173042 


VCT250: 


JSR 


PC. UNXINT 


2220 


006676 


00476/ 


173036 


VCT254: 


JSR 


PC. UNXINT 


2221 


006702 


004767 


173032 


VCT260: 


JSR 


PC. UNXINT 


22^^ 


006706 


004 767 


173026 


VCT264: 


JSR 


PC, UNXINT 


2225 


006712 


004767 


173022 


VCT270: 


JSR 


PC, UNXINT 


2224 


006716 


004767 


173016 


VCT274: 


JSR 


PC. UNXINT 


2225 














2226 


000722 


004767 


173012 


VCT300: 


JSR 


PC, UNXINT 


2227 


006726 


004767 


173006 


VCT304: 


JSR 


PC, UNXINT 


2228 


006732 


004767 


175002 


VCT310: 


JSR 


PC, UNXINT 


2229 


006736 


004767 


172776 


VCT314: 


JSR 


PC, UNXINT 


2230 


006742 


004767 


172772 


VCT520: 


JSR 


PC. UNXINT 


2231 


006746 


004767 


172766 


VCT324: 


JSR 


PC, UNXINT 


2232 


006752 


004767 


172762 


VCT330: 


JSR 


PC. UNXINT 


2233 
2234 
2235 


006756 


004767 


172756 


VCT534: 


JSR 


PC. UNXINT 


00<, 762 


004767 


172752 


VCT340: 


JSR 


PC, UNXINT 


2236 


006766 


004767 


172746 


VCT344: 


JSR 


PC, UNXINT 


2237 


006772 


004767 


1727^2 


VCT350: 


JSR 


PC. UNXINT 


2238 


006 776 


004 767 


172736 


VCT354: 


JSR 


PC.i>*XINT 


2259 


007002 


004767 


172752 


VCT360: 


JSR 


PC, UNXINT 


2240 


007006 


004 767 


172726 


VCT364: 


JSR 


PC, UNXINT 


2241 


007012 


004767 


172722 


VCT570: 


JSR 


PC, UNXINT 


2242 


007016 


004767 


172716 


VCT574: 


JSR 


PC. UNXINT 



SEQ 0068 



CVMSBnO .>M QUICK Vt-RU> 
MESSAGf TABLES (DATA SECTION) 



MACRO M1200 



10 -APR -84 07 J 55 PAGfc b9 



SEQ 0069 



.■»246 

^J4 7 
.?.?48 
J?249 
^^1^30 
2251 

2254 
2255 
2256 
2257 
2258 
2259 
2260 
2261 
2262 
2265 
2264 
2265 
2266 
2267 
2268 
2269 
2270 
2271 
2272 
2273 
2274 
2275 
2276 
2277 
2278 
2279 
2280 
2281 
2282 
2285 
2284 
2^'85 
2286 



.SBTTl. MESSAGE TABLES CDato section) 



007022 004 736 



007024 
007026 
007030 
007032 
007034 
007056 
007C40 
007042 



007046 
007050 
007052 
007054 
007056 
007060 
007062 



007066 
007070 
007072 
007074 

007076 



007102 
007104 
007106 
007110 
007112 
007114 
007116 
007120 
007122 
007124 



000105 
00017; 
000 .MO 
000422 
000511 
00054 7 
000001 
000000 



007044 004756 



000103 
000614 
000725 
000511 
00054 7 
000001 
000000 



007064 004736 



000103 
001026 
000511 
OOOC'Ol 
000000 



007100 004736 



000001 
000001 
000001 
001117 
000001 
001221 
000001 
001261 
001367 
000000 



TKTERR: JSR 


PC.a(SP)f 


.WORD 


ME X INF* 


.UORD 


EKTERl 


.WORD 


EKTER2 


.WORD 


EKTER3 


.WORD 


MCTUTl 


.WORD 


MlTUT2 


.WORD 


NEWLIN 


.WORD 





TL0W32: JSR 


PC.SCSP)^ 


.WORD 


ME X INF 


.WORD 


EL52M1 


.WORD 


EL32M2 


.WORD 


MCTUTl 


.WORD 


MCTUT2 


.WORD 


NEWLIN 


.WORD 





TNOPTY: JSR 


PC.8(SP)» 


.WORD 


ME X INF 


.WORD 


ENOPTl 


.WORD 


MCTUTl 


.WORD 


NEWLIN 


.WORD 





TCUSTM: JSR 


PC.SCSP)* 


.WORD 


NEWLIN 


.WORD 


NEWLIN 


.WORD 


NEWLIN 


.WORD 


ECUSTl 


.WORD 


NEWLIN 


.WORD 


ECU5T2 


.WORD 


NEWLIN 


.WORD 


EC0ST3 


.WORD 


tCUi3T4 


.WORD 






(Table locoter. 

(Expanded error message lines. 

I 

I S \ goal a Memory management abort . 

i 

t 

t 

t 

i 

t Table locater . 

(Expanded error message lines. 

t 

(Signal an error In the low 32K words of 

(memory . 

I 

i 



I Table locater, 

(Expanded error message lines. 

« 

(Signal a no parity detect situation. 

I 

1 

(Table locater. 



(Standard customer error message* 



VMStiBO 



CRtATtU BY MACRO ON lO-APR-04 AT 07:^6 



N6 



S^MBOl CRO'.iS REFERtNCE 
SIMBOL VALUE 
UFDCHR 001104 



UN- I RR 
UNXINT 



V^TORS 

vcrooo 

VCT004 

vcroio 

VCT014 

vcro2o 

VCT0?4 
VCT030 

VCT044 
VCT050 
VCTO^H 
VCiOGO 
VCT06'i 
VCT070 
VCTOM 
VCTl-^O 
VC.'104 
VCTllO 
VCT114 

vcrii^o 

VCT1^4 
VCT150 
VCT151 
VCT140 
VCT144 
VCT150 
VCTl!i4 
VCT160 
VCT164 
VCT170 
VCT174 
VCl^OO 
VCT?04 
VCTPIO 
VCT.n4 
v:t,';>o 
VCl..\-.'4 
VCT^30 



0061^2 
004666 
001740 



0064^0 
006422 
006426 
006452 
0064 36 
006442 
006446 
006452 
0064 S 6 
006'? 62 
006466 
0064 72 
0064 76 
006502 
006506 
006512 
006516 
0065?2 
00652C 
006552 
006556 
006542 
006546 
006552 
006556 
006562 
006566 
006572 
006576 
006602 
006606 
006612 
006616 
006622 
006626 
006652 
0066 56 
006642 
006646 
006652 



REFERENCES 



*10 
♦ 59 
*11 
14 
*14 
57 
57 
57 
58 
58 
58 
58 
14 
«57 
d57 
d5 7 
^57 
*57 
C57 
*57 
*57 
*57 
«57 
*57 
*57 
«57 
^57 
d57 
*57 
«57 
^57 
«57 
15 
«57 
*57 
«57 
ab7 
*57 
057 
Ob7 
057 
057 
057 
*»57 
Oj7 
^58 
058 
058 
058 
0S8 
058 
058 



■385 

1598 
-454 
-598 
-590 
-2160 
-2190 
■2200 
-2211 
-2221 
-2251 

?241 
-590 
-2171 
-2172 
-2173 
-2174 
-2175 
-2176 
-2177 
-2178 

2180 
-2161 
-2182 
-2185 
-2184 
-21iiD 
-2186 
-2187 
-2189 
-2190 
-2191 
-566 

2195 
-2194 

2195 
-2196 

2198 
■2199 
-2200 
-2201 
-2202 
-2203 
-2204 
-2205 
-2208 
-2209 
-2210 

2211 

2212 
-2215 

2214 



*11 
♦45 
15 
038 
57 
57 
57 
57 
58 
58 
58 
58 
20 



-445 
-1742 
-623 
-1555 
-2171 
-2161 
-2191 
-2201 
2212 
-2222 
-2252 
-2242 
-819 



*15-338 

17-685 

57-2l72 
57-2132 
57-2192 
57-2202 
58-2215 
58-2223 
58-2235 

ft57-21^9 



PAGE a 
CREF' VOi 

19-749 

44-1761 

57-2175 
57-2185 
57-2193 
57-2203 
58-2214 
58-2224 
58-2235 



SEQ 0076 



* 19 -756 

052-2038 

57-217-El 
57-218'-: 
5"'-2194 
3/ -2204 
58 2215 
53-2226 
58-2236 



*19-761 



57-2175 
57-2165 
57-2195 
57-2205 
58-2217 
58-2227 
58-2237 



19-762 



57-2176 
57-2186 

57 2196 

58 2208 
58-2218 
58-2228 
58-2238 



19-768 



57-2177 
57-2167 
57-2198 
58-2209 
56-2219 
58-2229 
53-2239 



♦38-1565 



57-2178 
57-2189 
5^-2199 
58-2210 
58-2220 
58-2230 
56-2240 



^57-2192 



B/ 



VMSBBO 



CRtArtU B> MACRO ON lO-APR-84 AT 07i5fo 



PAnt 5 



SiMeOL 


CROSS REFERtNCE 








CHU 


vol 










SYMBOL 


VALL»e 


RKFERENCES 


















VCT^J4 


006656 


©58 2215 


















VCT240 


006662 


058-2217 


















VCT244 


006666 


*58-22l8 


















VCTJ^SO 


0066 7^ 


058 -221*^ 


















VC'i4?M 


0066 76 


#58-2220 


















VCT^feO 


OOt 70^ 


^^58 2221 


















VCTC64 


00€.706 


058-2222 


















^ct:^7o 


00671J 


058 2225 


















VCT274 


006 716 


058-2224 


















VCT300 


006 72^ 


058-2226 


















VCT304 


006726 


058-2227 


















VCT510 


00675."* 


058-2228 


















VCT514 


006756 


^58 -222<> 


















VCT520 


006742 


058-2250 


















VCT324 


006746 


058-2231 


















VCT330 


0<Xi752 


050-2232 


















VCT554 


006756 


058-2233 


















VCT340 


006762 


058-2235 


















VCT344 


006 766 


058-2256 


















VCT550 


006 7 7? 


058-2257 


















VCT354 


0<>f>7^6 


058 2238 


















VCT360 


00 7002 


058-2259 


















VCT3e-4 


007006 


058-2240 


















vcr37o 


007012 


058-2241 


















VCT574 


00 7016 


058-2242 


















WHiTt 


005o04 


11-481 
47-1854 


11 485 

4 7-1856 


11-511 
04fl 1875 


22 


■910 


2^ 


•925 


22 


■951 58 1559 


URITLN 


005562 


46-1855 


047-1852 
















WRITPG 


005554 


38 1569 


59 1602 


45 1 747 


45 


. 1 797 


45 


■1809 


046 


■iat>. 


WR I 'JSN 


005640 


22-908 


22-918 


22-926 


?d 


-1561 


^9 


1594 


45 


1758 ff49 1907 


WRMGPA 


00 7220 


25 964 


061-2331 
















XQff 


- 000025 


05 232 


17 696 
















VON 


• 000021 


05 251 


17- 701 
















XXRTN 


006114 


♦ U-416 


U-494 


11-505 


♦ JO 


815 


44 


1/72 


ft52 


■iiOSJ 



SEQ 0079 



59-1592 



43.1736 



vMsne.o 



CRtATlD Hi MACRO OU 10 APR 64 AT 07:^6 



C/ 



PAGt h 



MACRO CROSS R 


EF'ERI-NCfe 






CREF 


vol 












MACRO NAME 


REFERENCES 




















(.All. 


*7 515 


11-444 


11-450 


11 481 


11-483 


11-485 


11 511 


12-550 


14-598 


15-659 




17-695 


17-700 


18-723 


18-725 


18-727 


18-729 


18-751 


18-733 


19-755 


19-760 




19 762 


19-763 


20-814 


20-817 


20-837 


21-881 


22-908 


22-910 


22 918 


22-925 




22-926 


22-951 


22-937 


22 942 


25 966 


23 974 


25 999 


24-1018 


25 1054 


25- 1055 




26-1078 


26 1080 


26 - 1082 


26-100* 


27-1125 


28-1183 


29-1214 


30-1242 


30-1246 


51-12.-6 




51-1280 


31-1282 


51-1286 


52-1311 


32-1314 


35 1343 


33-1349 


36-1467 


36-14 72 


56-1480 




56-1483 


56-1487 


36-1493 


57 1536 


38-1557 


38-1559 


58-1561 


38 1566 


38-1569 


59 1590 




59-1592 


59-1594 


39-1599 


39-1602 


45-1734 


43-1756 


45-1758 


43-1745 


45-1747 


45-1749 




45-1751 
49 1942 
*7-289 


44-1764 


45-1797 


45-1799 


45-1802 


45-1809 


46-1855 


47-1854 


47-1856 


48-1882 


POP 


12-554 


13-565 


13-574 


14-600 


1 7 - 705 


25-998 


28-1178 


46-1856 


47-1858 




48-1885 


49 1925 


49-1926 


51-2023 














PRESER 


*6-254 


21-858 


22-904 


25-960 


25-1049 


26-1075 


28 1155 


29-1205 


50-1255 


31-1268 




52-1307 


33-1337 


34-1391 


55 1422 


56-1461 


57-1509 


58-1554 


59-1587 


40-1620 


41-1658 




42-1703 


45-1793 


49-1908 
















PL'*H 


06-265 


12-527 


13-556 


17-689 


23-968 


281161 


46 1826 


47-1852 


481875 


51-2013 


RETliRN 


08-544 


16-669 


17-687 


17-700 


18-/55 


20-845 


21 885 


22-945 


25-1000 


25-1057 




26-1086 


27-1156 


28-1185 


29-1217 


30- 1252 


51-1290 


32-1518 


35-1565 


34 1401 


55- 1458 




36-1494 


5V-153e 


38-1571 


39-1604 


40-1642 


41-1680 


42-1715 


A5-1QU 


46-1637 


4 7-1659 




48-1886 


49-1927 


51-2025 

















SEQ 0080 



CVMSBBO 0-aM QUICK V 



.Bl 

.CI 
,D1 

.£1 
.Fl 
,G1 
.HI 
.11 
,Jl 
.Kl 
.LI. 
.Ml 
.Nl 



..85 
..05 
..05 
..E5 
. .F5 
..G5 
..H5 
..15 
. .J5 
. .K5 
..L5 
..tl5 
..N5 



..B2 
..C2 
..D2 
..E2 
..F2 
..G2 
..H2 
..12 
..J2 
..Kt 
..L2 
. .K2 
..N2 



..86 
..C6 
..06 
..E6 
..F6 
..G6 
..H6 
. .16 
..J6 
..K6 
..L6 
..M6 

..r;6 



B3 
C3 

03 
E3 
F3 
G3 

H3 
13 
J3 

K3 
I 5 
M5 
N3 



. ..87 
...C7 



..B4 
..C4 
. .04 
. .E4 
. .F4 
. .G4 
. .H4 
..14 
. .J4 
. .K4 
. .L4 
..M4 
.N4